JUnit

Besoin

Fournir un framework de test unitaire en Java.

Analyse

Un cas de test (test case) peut être considéré comme le pendant d'un cas d'utilisation (use case). Pour chaque scénario de ce dernier, il propose un test validant son implémentation.

Conception

Un cas de test JUnit est constitué d'une classe contenant :

Implémentation

Toute classe de test hérite de junit.framework.TestCase et implémente autant de méthode testXxx() que de scénarios à tester.

Elle peut redéfinir si elle le souhaite :

Exemples

Un exemple de classe de test JUnit est :

import<strong>junit.framework</strong>.*;<br> import org.javarome.exemple.MaClasse;<br> <b><br> public </b>class MonTest <b>extends TestCase</b> {<br> <br> <b>public </b>MonTest <b>(String </b>someTestName<b>)</b> {<br> <b>super (</b>someTestName<b>);</b><br> }<br> <b><br> protected void setUp()</b> {<br> <span class="codeComment">// Initialisation des tests</span><br> }<br> <br> <b> public void test</b>Scenario1() {<br> <span class="codeComment">// Code du test de scénario 1</span><br> final String expected = <span class="codeString">"EXPECTED RESULT"</span>;<br> String tested = new MaClasse().method ();<br> <b>assertTrue </b>(expected.equals (tested));<br> }<br> <br> <b> public void test</b>Scenario2() {<br> <span class="codeComment">// Code du test de scénario 2</span><br> }<br> <br> <b> protected void tearDown()</b> {<br> <span class="codeComment">// Nettoyage fin de test</span><br> }<br> }

Notes

Limitations