In deze sectie wordt beschreven hoe u tests kunt schrijven en uitvoeren met behulp van het JUnit-testframework. Zie JUnit Cookbook voor een (Engelse) inleiding tot JUnit.
Maak een project met de naam "JUnitTest". Nu kunt u uw eerste test schrijven. Implementeer de test in een subklasse van TestCase. Hiervoor kunt u zowel de standaardwizard voor een nieuwe klasse als de speciale wizard Testcase gebruiken.
Opmerking: Als u JUnit 4-tests wilt gebruiken, moet het compatibiliteitsniveau van uw compileerprogramma zijn ingesteld op 5.0.
Voeg een testmethode toe die bij een 'fail' overschakelt naar de klasse TestFailure. U kunt snel en gemakkelijk een testmethode invoeren via de sjabloon test. Hiertoe plaatst u de cursor in de klassendeclaratie. Typ vervolgens "test" en druk op Ctrl+Spatiebalk om codehulp te activeren en selecteer de sjabloon "test". Wijzig de naam van de aldus gemaakte methode in testFailure en roep de methode fail() op.
public void testFailure() throws Exception {
fail();
}
Nu kunt u uw eerste test uitvoeren.
U test TestFailure als volgt: open de vervolgkeuzelijst Uitvoeren op de werkbalk en selecteer Uitvoeren als > JUnit-test. U kunt de testresultaten bekijken in de view JUnit. In deze view ziet u de voortgang en status van de testuitvoering:
Telkens wanneer u een testuitvoering start, wordt deze view afgebeeld in het huidige perspectief. Het is wellicht handig om de JUnit-view te koppelen als snelview. De JUnit-view bevat twee tabbladen: op het ene ziet u een lijst met gevonden fouten en op het andere ziet u de volledige testsuite als boomstructuur. U kunt van een fout naar de bijbehorende bron navigeren door te dubbelklikken op de bijbehorende regel in het fouttraceringspad.
Koppel de JUnit-view als snelview, verwijder de fail()-instructie in de methode testFailure() zodat de test zal worden goedgekeurd en voer de test opnieuw uit. U kunt een test opnieuw uitvoeren door te klikken op Opnieuw uitvoeren op de werkbalk van de view of door het als laatste gestarte programma opnieuw uit te voeren via de vervolgkeuzelijst Uitvoeren. Ditmaal zou de test zonder fouten moeten worden voltooid. Omdat de test met succes is uitgevoerd, wordt de JUnit-view niet weergegeven. In plaats daarvan ziet u de succesindicator voor het pictogram van de JUnit-view en wordt het testresultaat in de statusregel afgebeeld. Telkens wanneer u de inhoud van het werkgebied na een test wijzigt, wordt het pictogram gemarkeerd met een "*" ter herinnering dat u uw tests opnieuw moet uitvoeren.
- Een geslaagde testuitvoering
- Een geslaagde testuitvoering, maar de inhoud van het werkgebied is gewijzigd nadat de test voor het laatst is uitgevoerd.
Behalve een testcase uitvoeren zoals hierboven is beschreven, kunt u ook het volgende doen:
Wanneer u parameters wilt doorgeven of de instellingen voor het uitvoeren van een test wilt aanpassen, opent u het dialoogvenster Startconfiguratie. Klik op Uitvoeren... in de vervolgkeuzelijst Uitvoeren op de werkbalk:
In dit dialoogvenster kunt u de uit te voeren test en de argumenten, het klassenpad en de JRE (Java Runtime Environment) voor de test opgeven.
Als een test fouten oplevert, kunt u het volgende doen om deze op te sporen:
Een JUnit-startconfiguratie bevat een "keepalive"-optie (instandhouden). Als "warme codevervanging" in uw VM-systeem wordt ondersteund, kunt u de code corrigeren en de test opnieuw uitvoeren zonder de testuitvoering helemaal opnieuw te moeten starten. Om deze functie te gebruiken moet u het selectievakje JUnit actief houden na testuitvoeringen in de foutopsporingswerkstand in de JUnit-startconfiguratie inschakelen.
U kunt eenvoudig een testsuite maken met behulp van de JUnit-wizard Testsuite en selecteren welke klassen u in een suite wilt opnemen.
Er zijn twee manieren om testklassen aan de suite toe te voegen of eruit te verwijderen:
Opmerking: bij het uitvoeren van de wizard worden twee markeringen, //$JUnit-BEGIN$
en
//$JUnit-END$
, in de gemaakte testsuiteklasse ingevoegd. Hierdoor kunnen bestaande testsuiteklassen
door de wizard worden bijgewerkt. U wordt geadviseerd de code tussen deze markeringen niet te bewerken.