Skip to content
Snippets Groups Projects
Commit 4234a467 authored by Simon Barner's avatar Simon Barner
Browse files

Merge branch '3833' into 'master'

Added MCDC documentation

See merge request !8
parents fd43e59c 0208cb0c
No related branches found
No related tags found
1 merge request!8Added MCDC documentation
......@@ -23,6 +23,7 @@ hierarchical_state_automaton.html cebd924f514cd50f229c7745e173f76bd0c0038b RED
library.html 4dcbc369f70cc5ba943404da07e15955df65b3fc RED
loading_standard_examples.html a2693477f0afb902f2899d12b3166f01378f6d8d RED
manual_deployment.html 91f2636b00d59253f7007864d4e0ebdd0b713dad RED
mcdc.html e2c759d71cf926540a34cae6b5c65e3899dd7e36 GREEN
mode_automaton.html dc395eab03cb6920580f54e317c3d203e64cb496 RED
model_checking_with_af3.html e856030ffeaab17a2f69da94ea76b8b369c30297 RED
model_element_attributes.html 627723b0a950a43af5cbe16c9ffd608a951ccf49 RED
......
......@@ -122,7 +122,7 @@ Getting started help page.
<img alt="" border="1" height="200" hspace="80" src="gettingStarted/img/WAF3verification.png" width="200" /><br />
&nbsp;
<p style="margin-left: 50px;"><a href="model_markers_view.html">On the Fly Checks</a><br />
<a href="model_testing.html">Model Based Testing</a><br />
<a href="mcdc.html">MCDC Test Case generation</a><br />
<a href="refinement_testing.html">Refinement Testing</a><br />
<a href="non_determinism_analysis.html">Nondeterminism Analysis</a><br />
<a href="reachability_analysis.html">Reachability Analysis</a><br />
......
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>MCDC Test Case Generation</title>
</head>
<body>
<h2><font color="#336699"><u>MCDC Test Case Generation</u></font></h2>
<p>
AF3 has a semi-formal language to write requirements that allows to automatically generate test cases fulfilling the MCDC (Modified Condition/Decision Coverage) criterion.
Such requirements specify the value of outputs based on the value of input, thus the interface (inputs / outputs) shall be clearly defined.
Requirements are written using an if-then-else pattern.
</p>
<p>
For example, consider the following requirement:
</p>
<img src="./pictures/mcdc1.png">
</br>
</br>
<p>
Right-click on the requirement and select "Formal specification aspect", then move to the "Formal aspect" tab.
This will create a component that allows to define the interface.
</p>
<p>
You can add inputs and outputs to the interface using the palette on the right-hand-side.
</p>
<img src="./pictures/mcdc2.png">
<p>
In order to formally define the requirement, add a "Code specification" behavior to the component (drag&drop from the palette).
Double-click in the component to open the editor.
The requirement shall follow the if-then-else pattern where the guard (if-part) shall refer to the inputs and the branches (then and else parts)
shall be a list of assignments (one for each output) using only expressions on the inputs and constants.
</p>
<img src="./pictures/mcdc3.png">
<p>
Test cases can be automatically created by right-clicking on the requirement and selecting "Generate MCDC".
</p>
<p>
The test suite will be created as a child of the requirement: expand the arrow on the left of the requirement and double-click to open the test suite.
</p>
<img src="./pictures/mcdc4.png">
</body>
</html>
\ No newline at end of file
org.fortiss.af3.rcp.application/html/pictures/mcdc1.png

613 KiB

org.fortiss.af3.rcp.application/html/pictures/mcdc2.png

413 KiB

org.fortiss.af3.rcp.application/html/pictures/mcdc3.png

255 KiB

org.fortiss.af3.rcp.application/html/pictures/mcdc4.png

560 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment