NetBeans 10 JUnit Jar не найден

У меня установлена ​​новая версия NetBeans 10. При попытке запустить только что созданные мной исходные модульные тесты я получаю следующую ошибку:

<classpath> или же <modulepath> за <junit> должен включать junit.jar, если не в собственном пути к Ant

Я мог бы, вероятно, взломать скрипт сборки, чтобы включить junit.jar, но я хочу знать: как правильно это исправить?

Разве в NetBeans не должна быть доступна версия JUnit? Должен ли я настроить свой проект по-другому? Как мне добавить путь к библиотеке?

Как я могу найти путь к классам для Ant (и какую версию / двоичную версию NetBeans использует)?

Проект Test Libraries показывает, что JUnit 5.3.1 присутствует, у меня там есть три файла Jar: junit-jipiter-api, junit-jupiter-params, junit-jupiter-engine. Но, похоже, на самом деле не найдено.

Проект представляет собой стандартную библиотеку Java (без основного класса). Я не добавил никаких "дополнений" или беспорядка с настройками проекта по умолчанию, которые использует NetBeans. Просто использовал мастер настройки основных вещей.


Число рейнольдса в ответ из списка рассылки NetBeans Джерджан Виленга, он указал мне на эту ветку и ответил:

Ага...

Мы никогда не удосужились реализовать поддержку JUnit 5 для проектов на основе Ant в NB 10.

Джон Макдоннелл

http://mail-archives.apache.org/mod_mbox/netbeans-users/201901.mbox/%3CCAAuDyk6WcgLaUDz0dp=4Arr7QGnwWcYey3VOeGojRRMRqVZrFA@mail.gmail.com%3E

Так что я думаю, что это просто не сработает. Я попробую предложенный возврат к JUnit 4 ниже.

5 ответов

Решение

Я также использую NetBeans 10, в xubuntu, если это поможет. Я понятия не имею, что происходит, поэтому мне пришлось вернуться к junit4. РЕДАКТИРОВАТЬ: Чтобы быть совершенно ясным, ant нуждается в junit.jar, который нигде не найден в стандартной установке netbeans 10. Пока кто-нибудь не предложит лучшее решение, вернитесь к junit4:

1) в ваших тестовых библиотеках щелкните правой кнопкой мыши и импортируйте файлы junit 4.1.2.

2) удалить джунт 5.3 из них.

3) удалите все импортированные файлы из вашего тестового файла и используйте junit4. т.е. ваш импорт будет выглядеть так:

import static junit.framework.Assert.assertEquals;
import org.junit.Test;
import org.junit.*;
/*import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;*/

4) утилизируйте beforeAll и другие тестовые теги. Оставьте только @Test один.

5) сохранить все, закрыть и заново открыть проект. Он будет жаловаться, что библиотеки hamcrest для junit4 не импортируются. Позвольте netbeans исправить это за вас.

После этого я смог протестировать успешные и провальные тесты. Я предполагаю, что когда вы генерируете тесты junit с помощью генератора шаблонов, он генерирует тесты junit 5, так что это немного раздражает. Но у тебя будут тесты!

Я нашел лучшее решение принятого ответа - выбрать JUnit 4 из тестов Create / Update. Тогда вам не придется каждый раз заново настраивать свои тесты.

Из Netbeans: https://netbeans.apache.org//kb/docs/java/junit-intro.html#_writing_junit_3_unit_tests

У меня была такая же ошибка, но это была не проблема конфигурации, а всего лишь опечатка.

Основной метод тестируемого мной класса был написан так:

public static void main(String agrs) {
 ///
}

Единственное, что мне нужно было сделать, это написать это правильно, вот так:

public static void main(String[] args) {
 ///
}

Как только я его изменил, проблема исчезла. Полагаю, это не глобальное решение, но некоторым может помочь.

verdade, o netbeans até este momento na versão 12.5 ainda da erro usando junit 5.3, simplesmente remova a lib e instale a versão 4.1 e bons testes

Я столкнулся с той же проблемой. Я удалил существующие файлы Junit 5 и вместо этого добавил файлы сюда.

https://github.com/junit-team/junit4/wiki/Загрузить и установить

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