2010-10-22 4 views

ответ

3

Нет способа (с 4.8) указать категории из командной строки.

1

Я могу предложить два подхода: 1. Создайте файл Ant с целью junit и затем вызовите эту цель из строки commend. 2. Внесите класс класса тестирования, в нем в каком-то классе с помощью метода main(). Таким образом, вы сможете запустить его.

5

Использование java пробег JUnitCore класс (также см. here).

Категории должны использоваться с наборами тестов с @RunWith(Categories.class) , @IncludeCategory и @ExcludeCategory. Я не знаю, какой динамический способ использовать категории для запуска тестов, но я хотел бы знать, что он существует. Вы можете иметь предварительно определенные тестовые классы для определенных категорий для их запуска.

+0

Возможно создать собственный тестовый бегун, который динамически выбирает тесты для запуска по категориям. – topchef

+0

Вот один из способов легко запустить все тесты в наборе/категории (без явного перечисления тестов): http://stackoverflow.com/questions/2176570/how-to-run-all-tests-belonging-to-a- some-category-in-junit-4/2176791 # 2176791 (Дайте мне знать, если это не то, что вы имели в виду.) – Jonik

+0

Да, я знаю об этом (http://stackoverflow.com/questions/3324623/how-can -i-вводного все-JUnit-тесты-в-один-пакет-NetBeans/3332970 # 3332970). Я думаю, что автор означает, что тесты выполняются на основе категории в качестве параметра. – topchef

0

В 4.10, мы делаем это:

mvn verify -p(your profiles) -Dit.test=(SuiteClass) 

где SuiteClass является пустым классом (нет методов или полей), которые помечаются @RunWith(Categories.class) и @Suite.SuiteClasses({FooIT.class, BarIT.class, ...}). FooIT и BarIT являются интеграционными тестами.

Смежные вопросы