JUnitCore - это точка входа в JUnit - поэтому, если вы хотите запустить тест программно или из какого-то не Java-скрипта, я думаю, это путь для JUnit 4.
TestRunner - это нечтоочень старый junit 3.x
Обратите внимание, что в настоящее время JUnit 5 является последней доступной основной версией, и у нее есть еще один способ запуска тестов.
Вопрос о различных способах запускатесты из командной строки уже даны ответы Здесь , поэтому я не могу добавить к этому многое.
Однако я могу прокомментировать:
Также, естьесть ли другие способы вызывать тесты Junit из командной оболочки ОС?
В настоящее время в обычных проектах люди не запускают подобные тесты, вместо этого они используют один из инструментов сборки (например, Maven, Gradle), который средидругие вещи заботятся о тестах.
Так, например, если вы используете maven, вы можете запустить mvn test
, и он скомпилирует все, что вам нужно, включая исходный код тестов, позаботится обо всех зависимых тестах.запрещает и запускает все тесты с помощью встроенного surefire
плагина.
Если вы не хотите ничего компилировать (при условии, что весь код уже скомпилирован и все установлено, выможно использовать mvn surefire:test
)
Эти инструменты сборки также интегрированы с инструментами CI (например, Jenkins и т. д.), поэтому это считается решенной проблемой.
Так что, если вы не делаетечто-то действительно другое (например, написание пользовательского интерфейса IDE, который должен запускать тест, выбранный пользователем по требованию или что-то в этом роде), в действительности нет необходимости запускать тесты с указанными вами опциями.