Почему JUnit Jupiter и JUnit Vintage разошлись, когда я запускал TestCase в IntelliJ?
Я видел, что JUnit5 выпущен, и я применил в IntelliJ V2016.2.1 и запустил несколько тестов.
так увидел ниже скриншот.
у меня всего два вопроса.
Почему JUnit Jupiter и JUnit Vintage разошлись, когда я запускал TestCase в IntelliJ?
Могу ли я объединить JUnit 4 и 5 TestResults?
2 ответа
JUnit 5 - это больше, чем просто новый API (называемый JUnit Jupiter). Он также содержит уровень абстракции для инструментов для запуска тестов JUnit (называемый JUnit Platform). Платформа не знает ни JUnit 4, ни Юпитера, ни чего-либо еще. Все, что он знает, это тестовые механизмы, которые будут выполнять тесты, для которых они были написаны.
(Вы можете прочитать больше об этом в руководстве пользователя или посте, который я написал об архитектуре JUnit 5.)
- Почему JUnit Jupiter и JUnit Vintage разошлись, когда я запускал TestCase в IntelliJ?
То, что вы видите, - это средство запуска, выполняющее два движка: один для нового API (Jupiter) и один для JUnit 4 (Vintage). Каждый механизм представляет тесты, которые он выполнил в своей собственной структуре данных, которую IntelliJ показывает в виде деревьев, которые вы видите.
- Могу ли я объединить JUnit 4 и 5 TestResults?
Это должна быть функция IDE, которая, насколько я знаю, не реализована.
В случае, если вы используете аннотацию
@RunWith(SpringRunner.class)
поверх класса вы можете удалить его, и это будет хорошо работать. Это то, что у меня есть перед аннотацией - это показывает, что Junit Vintage вышел из строя.
Это после того, как я удалил аннотацию: