Тестовые наборы считаются устаревшими в JUnit5? - PullRequest
0 голосов
/ 28 мая 2018

Я пытаюсь создать тестовые наборы с JUnit5.После некоторых исследований я не смог определить, является ли это поддерживаемой функцией или нет.

В официальном руководстве пользователя упоминаются только комплекты с учетом обратной совместимости с JUnit 4.

Вот как это было сделано в JUnit 4:

@RunWith(Suite.class)
@SuiteClasses({Test1.class, Test2.class})
public class TestSuite {
}

Означает ли это, что наборы тестов считаются устаревшими или же та же концепция все еще доступна под другим именем?

1 Ответ

0 голосов
/ 04 июня 2018

Означает ли это, что тестовые наборы считаются устаревшими или эта же концепция все еще доступна под другим именем?

Bitter Suite Ответ:

На самом деле в JUnit 5 есть поддержка наборов тестов, но это почти наверняка не то, что вы ищете.Тем не менее, команда JUnit работает над тем, что, вероятно, удовлетворит ваши потребности.

Подробный ответ:

Начиная с JUnit 5.2, единственная встроенная поддержка suites через JUnitPlatform Runner (зарегистрирован через @RunWith(JUnitPlatform.class)).Этот бегун фактически запускает платформу JUnit (она же инфраструктура JUnit 5) и позволяет вам выполнять тесты для различных моделей программирования, таких как JUnit 4 и JUnit Jupiter.Он также позволяет вам выбирать различные вещи (например, классы, пакеты и т. Д.) И настраивать фильтры включения и исключения (например, для тегов или механизмов тестирования).

Проблема с бегуном заключается в том, что он может не выполняется непосредственно на платформе JUnit.Он может только быть выполнен с использованием JUnit 4 сам по себе.Это означает, что вы теряете все возможности создания отчетов платформы JUnit, так как информация теряется при переводе с платформы JUnit на JUnit 4.

Таким образом, вы можете технически использовать обработчик JUnitPlatform для выполнения набора с использованиемJUnit 5, и тесты будут выполнены, но отчетность и отображение в IDE будут неоптимальными.

С другой стороны, команда JUnit планирует предоставить встроенную поддержку для наборов в JUnit 5, которая нестрадают от недостатков бегуна JUnitPlatform для JUnit 4. Подробнее см. все проблемы, назначенные метке "suite" на GitHub .

Кроме того, уже есть ветвь функции , которую вы можете проверить, которую можно использовать в сборке Maven или Gradle через JitPack .

С уважением,

Сэм (ядро JUnit 5коммиттер)

...