logo

Exemple de cas de prova JUnit a Java

Ja estem familiaritzats amb el JUnit marc de proves. S'utilitza per realitzar proves unitàries en Java. El cas de prova JUnit és el conjunt de codi que garanteix si el nostre codi de programa funciona com s'esperava o no.

En Java , hi ha dos tipus de proves unitàries possibles, proves manuals i proves automatitzades. Les proves manuals són un tipus especial de proves en què els casos de prova s'executen sense utilitzar cap eina. A diferència de les proves manuals, les proves automatitzades no són possibles sense suportar cap eina.

El org.junit package proporciona diverses classes i paquets, la qual cosa ens ajuda a assegurar-nos si el nostre codi proporciona la sortida esperada o no. Aquests paquets i classes són Assert, After, Before i Test, etc.

declaració de cas java
Exemple de cas de prova JUnit a Java

Utilitzarem l'eina eclipse per provar el codi java. Primer creem el codi java que volem provar i, després, escriurem la classe de prova o el cas de prova per al nostre codi Java.

Prenguem l'exemple d'un cas de prova JUnit per entendre com es realitzen realment les proves a Java.

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()); } } 

Explicació

Hem creat tres classes java, és a dir, JunitTestCaseExample.java, TestJunitTestCaseExample.java , i TestRunner .java. En el JunitTestCaseExample.java classe, hem creat el codi que volem provar. En aquesta classe, creem una llista de noms i quatre mètodes per afegir un element, eliminar un element, obtenir la mida de la llista i eliminar tots els elements de la llista.

En el TestJunitTestCaseExample.java , escrivim els casos de prova per a la classe JunitTestCaseEample.java. Creem un objecte del JunitTestCaseExample.java classe, i utilitzant el seu objecte, provarem tots els seus mètodes. Fem servir el assertEquals() mètode per comprovar el resultat real amb la sortida esperada.

Creem la classe TestRunner.java per executar els casos de prova. Conté el mètode main() en què executem la classe TestJunitTestCaseExample.java mitjançant el mètode runClasses() del JUnitCore. En aquest mètode, passem el fitxer de classe del TestJunitTestCaseExample.java. El resultat retornat pel mètode runClasses() s'emmagatzemarà a la variable resultat del tipus Result.

Ara, executarem la classe TestRunner.java per executar els casos de prova. Obtindrem la sortida true quan es superin els casos de prova i fals quan no es superin els casos de prova.

Sortida

Exemple de cas de prova JUnit a Java