JUnit 4 Test Suites

Как мне создать тестовые наборы с JUnit 4?

Кажется, вся документация, которую я видел, не работает для меня. И если я использую мастер Eclipse, он не дает мне возможности выбрать любой из созданных мной тестовых классов.

5 ответов

Решение
import org.junit.runners.Suite;
import org.junit.runner.RunWith;

@RunWith(Suite.class)
@Suite.SuiteClasses({TestClass1.class, TestClass2.class})
public class TestSuite {
  //nothing
}

Вы можете создать набор, как это. Например, AllTest Люкс будет выглядеть примерно так.

package my.package.tests;

@RunWith(Suite.class)
@SuiteClasses({
    testMyService.class,
    testMyBackend.class,
    ...
})

public class AllTests {}

Теперь вы можете запустить это несколькими способами:

  1. щелкните правой кнопкой мыши и запустите Eclipse как тест Junit
  2. создать работоспособное Java-приложение; Основной класс='org.junit.runner.JUnitCore' и Args= 'my.package.tests.AllTests'
  3. запустить из командной строки:

    $ java -cp build/classes/:/usr/share/java/junit4.jar:/usr/share/java/hamcrest-core.jar org.junit.runner.JUnitCore my.package.tests.AllTests
    

Я думаю, что TestSuite потерял популярность. Возможно, это был стиль до 4.x, но сейчас это не так, насколько я знаю.

Я просто комментирую тесты, которые хочу, а затем запускаю класс. Все аннотированные тесты запускаются. Я мог бы использовать Ant, но большую часть времени я использую IntelliJ для них.

Вот шаги для создания набора JUnit в eclipse:

  1. В представлении Package Explorer для перспективы Java в eclipse выберите свои тесты в их пакете внутри Java-проекта eclipse.
  2. Щелкните правой кнопкой мыши по любому из выбранных тестов.
  3. Во всплывающем меню выберите "Новый", "Другой".
  4. Откройте папку "Java", затем откройте папку "JUnit"
  5. Выберите "JUnit Test Suite", а затем нажмите кнопку "Далее"
  6. Выберите кнопку "Готово"
  7. Результат: создан файл пакета "AllTests.java" с автоматически включенными тестами
  8. Нажмите кнопку Run в затмении
  9. Результат: все тесты в комплекте
  10. Теперь вы можете указать этот файл пакета с помощью ANT, Jenkins или другого инструмента непрерывной интеграции конфигурации сборки.

Информация о версии: это для затмения Neon и JUnit 4. Вы также можете выбрать JUnit 3, прежде чем выбрать "Finish" на шаге 6.

В верхней части моей головы создайте TestSuite и вызовите addTests. Если вы хотите, чтобы кто-нибудь взглянул на какой-нибудь источник, попробуйте любую lib с открытым исходным кодом, например, hibernate или что-то из apache, и посмотрите под каталогом test исходного кода комплекта тестов...

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