cryptonas-branches/v0.2.1/cbox-tree.d/_offline/doc/en/CryptoBoxDevValidation.html

121 lines
4 KiB
HTML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>CryptoBox</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" media="screen" href="../../../var/www/cryptobox.css" type="text/css" />
</head>
<body>
<div id="lang">
<a href="../en/CryptoBox.html">English</a><br/>
<a href="../de/CryptoBox.html">Deutsch</a><br/>
</div>
<div id="main">
<div id="head">
<h1>The CryptoBox</h1>
<h2>Privacy for the rest of us.</h2>
</div>
<div id="content">
<div id="menu">
<a href="CryptoBox.html">Overview</a>
<a href="CryptoBoxUser.html">User documentation</a>
<a href="CryptoBoxDev.html">Development</a>
</div>
<div id="doc">
<div class="wikipage">
<div id="searchable"><p>
<div class='wiki-toc'>
<h4>Table of Contents</h4>
<ol>
<li><a href="CryptoBoxDevValidation.html#Overview">Overview</a></li>
<li><a href="CryptoBoxDevValidation.html#Validate">Validate</a></li>
<li><a href="CryptoBoxDevValidation.html#Howtocreateatest">How to create a test</a></li>
<li><a href="CryptoBoxDevValidation.html#Comments">Comments</a></li>
</ol>
</div>
</p>
<p>
<strong>Navigation:</strong> ( <a href="CryptoBoxDev.html">CryptoBoxDev</a>)
</p>
<hr />
<h1 id="ValidationoftheCryptoBox">Validation of the CryptoBox</h1>
<h2 id="Overview">Overview</h2>
<p>
The validation feature helps you to check the programming logic of the <a href="CryptoBox.html">CryptoBox</a>. A lot of test cases are defined to verify as many functions of the <a href="CryptoBox.html">CryptoBox</a> as possible.
</p>
<p>
The requests are processed with <a class="ext-link" title="http://curl.haxx.se/" href="http://curl.haxx.se/">curl</a>.
</p>
<p>
The received web page is saved to allow a later design review or css debugging.
</p>
<p>
The current state of the <a href="CryptoBox.html">CryptoBox</a> is represented by ten single values (e.g.: <i>box is configured</i>, <i>IP of the box</i>, <i>current language setting</i>, ...), 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.
</p>
<p>
Similar test cases are pooled into test groups (e.g.: <i>initialization</i>, <i>configuration</i> and <i>mounting</i>).
</p>
<h2 id="Validate">Validate</h2>
<p>
Run <i><a href="/trac/cryptobox/browser/trunk/scripts/validate.sh">scripts/validate.sh</a>]</i> to conduct all tests of all groups. See <i>scripts/validate.sh help</i> for other actions.
</p>
<p>
The results will be saved in <i>validation/report</i>.
</p>
<p>
In addition to every single retrieved page, a html page called <i>summary-?.html</i> is created, which contains the state checks of all tests in a group.
</p>
<h2 id="Howtocreateatest">How to create a test</h2>
<p>
All test cases can be found in <i>validation/test-cases</i>.
</p>
<p>
Every test consists of the following files:
</p>
<table class="wiki">
<tr><td>input.curl</td><td>the configuration file for the <i>curl</i> request
</td></tr><tr><td>output</td><td>the predicted state of the <a href="CryptoBox.html">CryptoBox</a> after the call
</td></tr><tr><td>description</td><td>a short description of the test (will be used for the summary)
</td></tr><tr><td>delay</td><td>[optional] time to wait after this test
</td></tr></table>
<p>
Use the existing test cases as templates for new tests.
</p>
<p>
Read <a href="/trac/cryptobox/browser/trunk/validation/test-cases/README">validation/test-cases/README</a> for details.
</p>
<p>
Every logical path of the web interface CGI should be validated by a test case.
</p>
<hr />
<h2 id="Comments">Comments</h2>
<p>
</div>
</div>
</div><!-- end of 'words' -->
<div id="footer">
<a href="https://systemausfall.org/prj/cryptobox" title="Project page">CryptoBox-Home</a>&nbsp;&nbsp;The CryptoBox is a project of <a href="https://systemausfall.org/senselab" title="systemausfall.org">sense.lab</a>
</div>
</div>
</div>
</body>
</html>