java - tutorial - No se puede encontrar el símbolo assertEquals
test en java (3)
Estoy tratando de escribir mis primeras pruebas de unidad para una calculadora, pero NetBeans dice que no puede encontrar el símbolo assertEquals
y la anotación @Test
.
¿Debo incluir algo?
Estoy usando NetBeans 7.3.1 y W7.
package calculator;
import org.junit.Assert.*;
public class UnitTests{
@Test
public void checkAdd(){
assertEquals(2, Calculator.rpnCalc(" 2 3 + "));
}
}
EDITAR: Gracias chicos, importarlo como estático ayudó. Se requiere anotación de prueba solo incluyendo
import org.junit.Test;
En JUnit 5, el nombre del paquete ha cambiado y las aserciones se encuentran en org.junit.jupiter.api.Assertions
y Suposiciones en org.junit.jupiter.api.Assumptions
Así que tienes que agregar la siguiente static import
:
import static org.junit.jupiter.api.Assertions.*;
Consulte también http://junit.org/junit5/docs/current/user-guide/#writing-tests-assertions
Estoy trabajando en JUnit en entorno java 8, usando jUnit4.12
para mí: el compilador no pudo encontrar el método assertEquals, incluso cuando lo usé
import org.junit.Assert;
Así que cambié
assertEquals("addb", string);
a
Assert.assertEquals("addb", string);
Entonces, si está enfrentando un problema relacionado con assertEqual
no reconocido, cámbielo a Assert.assertEquals(,);
debería resolver tu problema
assertEquals
es un método estático. Como no puede usar métodos estáticos sin importarlos explícitamente de una manera estática, tiene que usar cualquiera de los dos:
import org.junit.Assert;
...
Assert.assertEquals(...)
o:
import static org.junit.Assert.assertEquals;
...
assertEquals(...)
Para @Test
es un poco diferente. @Test
es una anotación que puedes ver en @
. Las anotaciones se importan como clases.
Así que deberías importarlo como:
import org.junit.Test;
En general, evite usar comodines en las importaciones como import org.junit.*
. Por razones, vea ¿Por qué es malo usar un comodín con una declaración de importación de Java? .