He instalado JUnit en mi Ubuntu 11.04
sudo apt-get install junit
Luego creó un archivo de prueba como:
import org.junit.*;
public class TestBasicLinkedList {
@Test public void testCanAdd(String[] args) {
BasicLinkedList<Integer> list = new BasicLinkedList();
list.add(new BasicListNode<Integer>(1));
assertTrue(list.size() == 1);
assertTrue(list.getFirst().getElement().equals(1));
}
}
Luego intenté correr en la terminal
java org.junit.runner.JUnitCore TestBasicLinkedList.java
Tiene:
Exception in thread "main" java.lang.NoClassDefFoundError: org/junit/runner/JUnitCore
Caused by: java.lang.ClassNotFoundException: org.junit.runner.JUnitCore
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: org.junit.runner.JUnitCore. Program will exit.
¿Cómo uso JUnit? ¿Hay una mejor manera más corta de usarlo que el comando largo java org.junit.runner.JUnitCore TestBasicLinkedList.java
? Tal vez algo como junit *.Tests.java
tal vez?
/usr/share/java/junit.jar
enlaces a la última versión de junit3, mientras que/usr/share/java/junit4.jar
enlaces a la última versión de junit4.Para ponerlo en funcionamiento, este es un caso de prueba básico:
La clase de prueba debe extender TestCase, y los métodos de prueba deben comenzar con "prueba", no aceptar argumentos y devolver nulo.
Compilar:
Correr:
Esto es para JUnit 4; JUnit 3 utiliza diferentes clases para ejecutar pruebas (pruebe junit.textui.TestRunner).
fuente
java -cp /usr/share/java/junit.jar:. junit.textui.TestRunner TestBasicLinkedList
funciona para JUnit3. Esto fue útil./usr/share/java/junit4.jar
es un enlace simbólico a la última versión de junit4./usr/share/java/junit.jar
es un enlace simbólico a la última versión de junit3.Si su aplicación requiere que configure
$JUNIT_HOME
:Si su aplicación requiere que lo tenga en su
$CLASSPATH
:Simplemente cópielo en uno de los directorios de classpath de su aplicación.
fuente