JUnit provee elementos que nos facilitan probar entidades o clases de nuestro programa:
Permite cargar los test de forma transparente Provee anotaciones que facilitan el testing: @Before, @BeforeClass, @After, and @AfterClass Provee diferentes asserts Integración con IDEs (eclipse, netbeans) y herramientas como maven y ant.
Veamos un ejemplo de test con JUnit:
import static org.junit.Assert.*;
import org.junit.Test;
public class CalculatorTest {
@Test
public void testAdd() {
Calculator calculator = new Calculator();
double result = calculator.add(10, 50);
assertEquals(60, result, 0);
}
}
En la primera linea se importan los métodos de la clase estática Assert, la cual cuenta con sin fin de asserts, que facilitan nuestros test.
Con @Test indicamos que ese método es un Test. Además con el método assertEquals de la clase Assert verificamos si el resultado es igual a 60.
Test Case son casos de prueba, en JUnit 4 son los metodos que estan anotados con @Test
Test Suite son un conjunto de Test Case, JUnit 4 genera automáticamente un Test Suite cuando se corren todos los test de una clase. Veamos un ejemplo de Test Suite:
@RunWith(value=org.junit.runners.Suite.class)
@SuiteClasses(value={FolderConfigurationTest.class,
FileConfigurationTest.class})
public class FileSystemConfigurationTestSuite {
}
Con @RunWith configuramos el Runner para correr los Test Suite. Runner es el motor que corre los test, JUnit proporciona uno por defecto que por medio de anotaciones se puede cambiar. Y con la anotación @SuiteClasses indicamos que clases correr.