Почему JUnit Jupiter и JUnit Vintage были разделены при запуске TestCase в IntelliJ?

Я увидел, что JUnit5 выпущен, и я применил IntelliJ V2016.2.1 и запустил несколько тестов.

так видел ниже скриншот.

занятый кот

у меня всего два вопроса.

  1. Почему JUnit Jupiter и JUnit Vintage были разделены при запуске TestCase в IntelliJ?

  2. Могу ли я объединить JUnit 4 и 5 TestResults?


person byrage    schedule 08.08.2016    source источник
comment
Вы можете удалить результаты для JUnit Vintage. Пожалуйста, смотрите мой ответ ниже.   -  person Arefe    schedule 14.01.2021


Ответы (2)


JUnit 5 — это больше, чем просто новый API (называемый JUnit Jupiter). Он также содержит уровень абстракции для инструментов для запуска тестов JUnit (называемый JUnit Platform). Платформа не знает ни JUnit 4, ни Jupiter, ни чего-либо еще. Все, что он знает, это тестовые движки, которые будут выполнять тесты, для которых они были написаны.

(Подробнее об этом можно прочитать в пользовательском руководство или сообщение, которое я написал об архитектуре JUnit 5 .)

  1. Почему JUnit Jupiter и JUnit Vintage были разделены при запуске TestCase в IntelliJ?

Вы видите средство запуска, выполняющее два движка: один для нового API (Jupiter) и один для JUnit 4 (Vintage). Каждый движок представляет тесты, которые он запускал, в своей собственной структуре данных, которую IntelliJ отображает в виде деревьев, которые вы видите.

  1. Могу ли я объединить JUnit 4 и 5 TestResults?

Это должна быть функция IDE, которая, насколько мне известно, не реализована.

person Nicolai Parlog    schedule 08.08.2016

В случае, если вы используете аннотацию @RunWith(SpringRunner.class) поверх класса, вы можете удалить ее, и это будет хорошо работать. Вот что у меня есть до аннотации - там видно, что Junit Vintage провалился.

введите здесь описание изображения

Это после того, как я удалил аннотацию:

введите здесь описание изображения

person Arefe    schedule 14.01.2021