Navigation: ( CryptoBoxDev)

# Validation of the CryptoBox

## Overview

The validation feature helps you to check the programming logic of the CryptoBox. A lot of test cases are defined to verify as many functions of the CryptoBox as possible.

The requests are processed with curl.

The received web page is saved to allow a later design review or css debugging.

The current state of the CryptoBox is represented by ten single values (e.g.: box is configured, IP of the box, current language setting, ...), which are invisibly a part of each html page (as comments). The returned status of every request is compared to the predicted value of the test case.

Similar test cases are pooled into test groups (e.g.: initialization, configuration and mounting).

## Validate

Run scripts/validate.sh] to conduct all tests of all groups. See scripts/validate.sh help for other actions.

The results will be saved in validation/report.

In addition to every single retrieved page, a html page called summary-?.html is created, which contains the state checks of all tests in a group.

## How to create a test

All test cases can be found in validation/test-cases.

Every test consists of the following files:

input.curl | the configuration file for the curl request
output | the predicted state of the CryptoBox after the call
description | a short description of the test (will be used for the summary)
delay | [optional] time to wait after this test

Use the existing test cases as templates for new tests.

Read validation/test-cases/README for details.

Every logical path of the web interface CGI should be validated by a test case.

## Comments