Já estamos familiarizados com JUnit estrutura de testes. É usado para realizar testes unitários em Java. O caso de teste JUnit é o conjunto de código que garante se o código do nosso programa funciona conforme o esperado ou não.
Em Java , existem dois tipos de testes unitários possíveis: testes manuais e testes automatizados. O teste manual é um tipo especial de teste em que os casos de teste são executados sem o uso de nenhuma ferramenta. Ao contrário dos testes manuais, os testes automatizados não são possíveis sem o suporte de qualquer ferramenta.
O org.junit package fornece diversas classes e pacotes, o que nos ajuda a garantir se nosso código fornece a saída esperada ou não. Esses pacotes e classes são Assert, After, Before e Test, etc.
Usaremos a ferramenta Eclipse para testar o código Java. Primeiro criamos o código Java que queremos testar e, depois disso, escreveremos a classe de teste ou caso de teste para nosso código Java.
Vejamos o exemplo de um caso de teste JUnit para entender como o teste é realmente executado em 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
baixar sts
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()); } }
Explicação
Criamos três classes java, ou seja, JunitTestCaseExample.java, TestJunitTestCaseExample.java , e TestRunner .Java. No JunitTestCaseExample.java class, criamos o código que queremos testar. Nesta classe, criamos uma lista de nomes e quatro métodos para adicionar um elemento, remover um elemento, obter o tamanho da lista e remover todos os elementos da lista.
No TestJunitTestCaseExample.java , escrevemos os casos de teste para a classe JunitTestCaseEample.java. Criamos um objeto do JunitTestCaseExample.java classe, e usando seu objeto, testaremos todos os seus métodos. Nós usamos o assertEquals() método para verificar o resultado real com a saída esperada.
Criamos a classe TestRunner.java para executar os casos de teste. Ele contém o método main() no qual executamos a classe TestJunitTestCaseExample.java usando o método runClasses() do JUnitCore. Neste método, passamos o arquivo de classe TestJunitTestCaseExample.java. O resultado retornado pelo método runClasses() será armazenado na variável de resultado do tipo Result.
Agora, executaremos a classe TestRunner.java para executar os casos de teste. Obteremos a saída verdadeira quando os casos de teste forem aprovados e falsa quando os casos de teste não forem aprovados.
Saída