Средство запуска тестов JUnit 4 в Eclipse 4.11.
У меня есть проект eclipse, который был импортирован из файла build.gradle. В этом проекте есть несколько разных исходных путей, каждый из которых имеет собственный тестовый путь. main/java, test/java, foo/java, fooTest/java, fooTest/resource и так далее.
Когда я запускаю конфигурацию JUnit "весь проект" (отладка, запуск, покрытие кода и т. д.), все, что он находит, - это тесты в "test/java". Я успешно добавил новые тестовые классы и новые методы @Test в эту папку.
Тесты из любого другого исходного пути игнорируются, когда я пытаюсь «Выполнить все тесты в выбранном проекте, пакете или исходной папке». Кроме того, при выборе конкретной исходной папки «fooTest/java» появляется ошибка с сообщением «С помощью средства запуска тестов« Junit 4 »не найдено тестов». Однако, когда я использую опцию «Выполнить один тест» с определенным классом тестов, он находит все свои методы тестирования просто отлично. Я могу указать конкретный метод, и тест проходит нормально.
Я попытался изменить выходные каталоги моих неосновных исходных путей теста, чтобы записать в ту же папку, что и мой рабочий исходный путь теста. Нет радости.
Я пробовал различные настройки флага Eclipse «Содержит тестовые источники» для разных путей тестовых источников. Включено или выключено, поведение одинаково для всех моих тестовых исходных путей. /test/java всегда находится, fooTest/java всегда отсутствует. Нет, я не пробовал все 16 перестановок флага в моих 4 разных тестовых исходных путях.
Я попытался вырвать все материалы, связанные с Gradle, из .project и .classpath. Никаких изменений в поведении. Черт... оправдал мои надежды.
Я попытался изменить порядок <classpathentry/> в файле проекта .classpath. Когда я переместил test/java таким образом, чтобы он больше не был первым тестовым путем, я снова получил ошибку «тесты не найдены», точно так же, как когда я нацелил конфигурацию junit «запустить все тесты в выбранном проекте, пакете или исходной папке» в одной из моих других папок тестового источника. Возвращение восстановило исходное поведение.
Есть ли у кого-нибудь дополнительные предложения, которые я мог бы попытаться выполнить, чтобы мои оставшиеся тесты выполнялись без индивидуальных конфигураций для каждого тестового класса, которые я должен запускать вручную по одному?
Я запускаю их через eclipse runner... либо нажав "отладка" или "запустить" в пользовательском интерфейсе, либо нажав F11 или ctrl+F11 (которые делают то же самое соответственно). Задачи gradle уже разделены «исходным набором», и я могу (и делаю) предоставлять несколько задач в командной строке... но у Eclipse просто есть опция «весь проект», но она не работает так, как рекламируется.





Я переключился на средство запуска тестов JUnit 5, и он отлично все понял. Этот винтажный пакет смог найти все мои тесты JUnit 4, и с тех пор я изменил несколько тестов, чтобы использовать новомодные аннотации и утверждения в JUnit 5.
Возможно, это была известная ошибка/ограничение в бегуне JUnit 4? Ах хорошо. Теперь это работает.
Как вы проводите тесты? Средство запуска Eclipse, задача Gradle?