Sme už oboznámení s JUnit testovací rámec. Používa sa na vykonávanie testovania jednotiek v jazyku Java. Testovací prípad JUnit je súbor kódu, ktorý zaisťuje, či náš programový kód funguje podľa očakávania alebo nie.
In Java , sú možné dva typy testovania jednotiek, manuálne testovanie a automatické testovanie. Manuálne testovanie je špeciálny typ testovania, pri ktorom sa testovacie prípady vykonávajú bez použitia akéhokoľvek nástroja. Na rozdiel od manuálneho testovania nie je automatické testovanie možné bez podpory akéhokoľvek nástroja.
The org.junit package poskytuje niekoľko tried a balíkov, čo nám pomáha zaistiť, či náš kód poskytuje očakávaný výstup alebo nie. Tieto balíčky a triedy sú Assert, After, Before a Test atď.
abeceda v číslach
Na testovanie java kódu použijeme nástroj eclipse. Najprv vytvoríme java kód, ktorý chceme otestovať, a potom napíšeme testovaciu triedu alebo testovací prípad pre náš Java kód.
Vezmime si príklad testovacieho prípadu JUnit, aby sme pochopili, ako sa vlastne testovanie v Jave vykonáva.
JunitTestCaseExample.java
package JavaTpoint. JunitExamples; import java.util.ArrayList; import java.util.List; public class JunitTestCaseExample { private List students = new ArrayList(); public void remove(String name) { students.remove(name); } public void add(String name) { students.add(name); } public void removeAll(){ students.clear(); } public int sizeOfStudent() { return students.size(); } }
TestJunitTestCaseExample.java
package JavaTpoint.JunitExamples; import static org.junit.Assert.assertEquals; import org.junit.Test; public class TestJunitTestCaseExample { JunitTestCaseExample obj = new JunitTestCaseExample(); @Test public void testAdd() { obj.add('Emma'); obj.add('Ronan'); obj.add('Antonio'); obj.add('Paul'); assertEquals('Adding 4 student to list', 4, obj.sizeOfStudent()); } @Test public void testSize() { obj.add('Emma'); obj.add('Ronan'); obj.add('Antonio'); assertEquals('Checking size of List', 3, obj.sizeOfStudent()); } @Test public void testRemove() { obj.add('Antonio'); obj.add('Paul'); obj.remove('Paul'); assertEquals('Removing 1 student from list', 1, obj.sizeOfStudent()); } @Test public void removeAll() { obj.removeAll(); } }
TestRunner.java
package JavaTpoint.JunitExamples; import org.junit.runner.Result; import org.junit.runner.JUnitCore; import org.junit.runner.notification.Failure; public class TestRunner { public static void main(String[] args) { Result result = JUnitCore.runClasses(TestJunitTestCaseExample.class); for (Failure fail : result.getFailures()) { System.out.println(fail.toString()); } System.out.println(result.wasSuccessful()); } }
Vysvetlenie
Vytvorili sme tri java triedy, t.j. JunitTestCaseExample.java, TestJunitTestCaseExample.java , a TestRunner .java. V JunitTestCaseExample.java triedy, vytvorili sme kód, ktorý chceme otestovať. V tejto triede vytvoríme zoznam mien a štyri metódy na pridanie prvku, odstránenie prvku, získanie veľkosti zoznamu a odstránenie všetkých prvkov zo zoznamu.
relačná algebra v rdbms
V TestJunitTestCaseExample.java , píšeme testovacie prípady pre triedu JunitTestCaseEample.java. Vytvárame objekt JunitTestCaseExample.java triedy a pomocou jej objektu otestujeme všetky jej metódy. Používame claimEquals() metóda na kontrolu skutočného výsledku s očakávaným výstupom.
Na vykonanie testovacích prípadov vytvoríme triedu TestRunner.java. Obsahuje metódu main(), v ktorej spúšťame triedu TestJunitTestCaseExample.java pomocou metódy runClasses() JUnitCore. Pri tejto metóde odovzdávame súbor triedy TestJunitTestCaseExample.java. Výsledok vrátený metódou runClasses() sa uloží do premennej result typu Result.
Teraz spustíme triedu TestRunner.java na vykonanie testovacích prípadov. Výstup dostaneme true, keď testovacie prípady prejdú a false, keď testovacie prípady neprejdú.
Výkon