Как установить / использовать JUnit?

Я установил JUnit на свой Ubuntu 11.04

sudo apt-get install junit

Затем создал тестовый файл, например:

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

Затем попытался запустить в терминале

java org.junit.runner.JUnitCore TestBasicLinkedList.java

Got:

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.

Как использовать JUnit? Есть ли более короткий способ использования, чем длинная команда java org.junit.runner.JUnitCore TestBasicLinkedList.java? Возможно, что-то вроде junit *.Tests.java?

8
задан 4 October 2011 в 17:03

11 ответов

В общем, JUnit (как и любая библиотека Java) должен находиться в вашем пути к классам. Я не знаю, где именно Ubuntu хранит junitX.jar, но вы, вероятно, хотите что-то вроде этого:

java -cp .:/usr/share/java/junit4-4.10.jar TestBasicLinkedList

Сначала вам нужно скомпилировать TestBasicLinkedList.

7
ответ дан 25 May 2018 в 18:28
  • 1
    /usr/share/java/junit.jar ссылается на последнюю версию junit3, а /usr/share/java/junit4.jar ссылается на последнюю версию junit4. – daniel kullmann 11 April 2012 в 12:12

Чтобы запустить вас, это базовый тестовый пример:

import junit.framework.TestCase;

public class TestBasicLinkedList extends TestCase {
  public void testTrue() {
    assertTrue(true);
  }
}

Класс тестирования должен расширить TestCase, а методы тестирования должны начинаться с «теста», не принимать аргументы и возвращать void .

Скомпилировать:

javac -cp /usr/share/java/junit4.jar TestBasicLinkedList.java

Для запуска:

java -cp /usr/share/java/junit4.jar:. org.junit.runner.JUnitCore TestBasicLinkedList

Это для JUnit 4; JUnit 3 использует разные классы для выполнения тестов (попробуйте junit.textui.TestRunner).

13
ответ дан 25 May 2018 в 18:28
  • 1
    Спасибо .. java -cp /usr/share/java/junit.jar:. junit.textui.TestRunner TestBasicLinkedList работает для JUnit3. Это было полезно. – Jayesh 19 December 2014 в 01:57
  • 2
    Отличное объяснение для обеспечения того, чтобы основы работали! Thx тонна – Boris Däppen 24 October 2015 в 16:20
sudo apt-get install junit4
/usr/share/java/junit4.jar является символической ссылкой на последнюю версию junit4. /usr/share/java/junit.jar является символической ссылкой на последнюю версию junit3.

Если ваше приложение требует, чтобы вы установили $JUNIT_HOME:

mkdir ~/junit
ln -s /usr/share/java/junit4.jar ~/junit
ln -s /usr/share/java/hamcrest-core.jar ~/junit
export JUNIT_HOME=~/junit

Если ваше приложение требует, чтобы вы установили $JUNIT_HOME:

Просто скопируйте его в один из каталогов пути к папке вашего приложения.

0
ответ дан 25 May 2018 в 18:28

Чтобы запустить вас, это базовый тестовый пример:

import junit.framework.TestCase;

public class TestBasicLinkedList extends TestCase {
  public void testTrue() {
    assertTrue(true);
  }
}

Класс тестирования должен расширять TestCase, а методы тестирования должны начинаться с «теста», не принимать аргументы и возвращать пустоту .

Чтобы скомпилировать:

javac -cp /usr/share/java/junit4.jar TestBasicLinkedList.java

Для запуска:

java -cp /usr/share/java/junit4.jar:. org.junit.runner.JUnitCore TestBasicLinkedList

Это для JUnit 4; JUnit 3 использует разные классы для выполнения тестов (попробуйте junit.textui.TestRunner).

13
ответ дан 25 July 2018 в 21:15
sudo apt-get install junit4
  • /usr/share/java/junit4.jar является символической ссылкой на последнюю версию junit4.
  • /usr/share/java/junit.jar является символической ссылкой на последнюю версию junit3.

Если вашему приложению требуется установить $JUNIT_HOME:

mkdir ~/junit
ln -s /usr/share/java/junit4.jar ~/junit
ln -s /usr/share/java/hamcrest-core.jar ~/junit
export JUNIT_HOME=~/junit

Если ваше приложение требует, чтобы оно было в вашем $CLASSPATH:

Просто скопируйте его в одну из каталогов пути к папке вашего приложения.

0
ответ дан 25 July 2018 в 21:15
sudo apt-get install junit4
  • /usr/share/java/junit4.jar является символической ссылкой на последнюю версию junit4.
  • /usr/share/java/junit.jar является символической ссылкой на последнюю версию junit3.

Если вашему приложению требуется установить $JUNIT_HOME:

mkdir ~/junit
ln -s /usr/share/java/junit4.jar ~/junit
ln -s /usr/share/java/hamcrest-core.jar ~/junit
export JUNIT_HOME=~/junit

Если ваше приложение требует, чтобы оно было в вашем $CLASSPATH:

Просто скопируйте его в одну из каталогов пути к папке вашего приложения.

0
ответ дан 31 July 2018 в 12:09
sudo apt-get install junit4
  • /usr/share/java/junit4.jar является символической ссылкой на последнюю версию junit4.
  • /usr/share/java/junit.jar является символической ссылкой на последнюю версию junit3.

Если вашему приложению требуется установить $JUNIT_HOME:

mkdir ~/junit
ln -s /usr/share/java/junit4.jar ~/junit
ln -s /usr/share/java/hamcrest-core.jar ~/junit
export JUNIT_HOME=~/junit

Если ваше приложение требует, чтобы оно было в вашем $CLASSPATH:

Просто скопируйте его в одну из каталогов пути к папке вашего приложения.

0
ответ дан 2 August 2018 в 02:54

Чтобы запустить вас, это базовый тестовый пример:

import junit.framework.TestCase;

public class TestBasicLinkedList extends TestCase {
  public void testTrue() {
    assertTrue(true);
  }
}

Класс тестирования должен расширять TestCase, а методы тестирования должны начинаться с «теста», не принимать аргументы и возвращать пустоту .

Чтобы скомпилировать:

javac -cp /usr/share/java/junit4.jar TestBasicLinkedList.java

Для запуска:

java -cp /usr/share/java/junit4.jar:. org.junit.runner.JUnitCore TestBasicLinkedList

Это для JUnit 4; JUnit 3 использует разные классы для выполнения тестов (попробуйте junit.textui.TestRunner).

13
ответ дан 7 August 2018 в 20:49
sudo apt-get install junit4
  • /usr/share/java/junit4.jar является символической ссылкой на последнюю версию junit4.
  • /usr/share/java/junit.jar является символической ссылкой на последнюю версию junit3.

Если вашему приложению требуется установить $JUNIT_HOME:

mkdir ~/junit
ln -s /usr/share/java/junit4.jar ~/junit
ln -s /usr/share/java/hamcrest-core.jar ~/junit
export JUNIT_HOME=~/junit

Если ваше приложение требует, чтобы оно было в вашем $CLASSPATH:

Просто скопируйте его в одну из каталогов пути к папке вашего приложения.

0
ответ дан 7 August 2018 в 20:49
sudo apt-get install junit4
  • /usr/share/java/junit4.jar является символической ссылкой на последнюю версию junit4.
  • /usr/share/java/junit.jar является символической ссылкой на последнюю версию junit3.

Если вашему приложению требуется установить $JUNIT_HOME:

mkdir ~/junit
ln -s /usr/share/java/junit4.jar ~/junit
ln -s /usr/share/java/hamcrest-core.jar ~/junit
export JUNIT_HOME=~/junit

Если ваше приложение требует, чтобы оно было в вашем $CLASSPATH:

Просто скопируйте его в одну из каталогов пути к папке вашего приложения.

0
ответ дан 10 August 2018 в 09:10
sudo apt-get install junit4
  • /usr/share/java/junit4.jar является символической ссылкой на последнюю версию junit4.
  • /usr/share/java/junit.jar является символической ссылкой на последнюю версию junit3.

Если вашему приложению требуется установить $JUNIT_HOME:

mkdir ~/junit
ln -s /usr/share/java/junit4.jar ~/junit
ln -s /usr/share/java/hamcrest-core.jar ~/junit
export JUNIT_HOME=~/junit

Если ваше приложение требует, чтобы оно было в вашем $CLASSPATH:

Просто скопируйте его в одну из каталогов пути к папке вашего приложения.

0
ответ дан 13 August 2018 в 12:34

Другие вопросы по тегам:

Похожие вопросы: