При использовании JUnit5 я получил предупреждение: «ClassNotFoundException: org.junit.platform.engine.support.filter.ExclusionReasonConsumingFilter» - PullRequest
0 голосов
/ 21 сентября 2018

Я пытаюсь использовать JUnit5.
Сначала я добавил зависимости в проект maven:

<dependencies>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-engine</artifactId>
        <version>5.3.0</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.junit.platform</groupId>
        <artifactId>junit-platform-runner</artifactId>
        <version>1.3.0</version>
        <scope>test</scope>
    </dependency>
</dependencies>

Затем я создал тест:

package com.example.multicurrency;

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;

class JunitTests {
    @Test
    void testAssertTrue() {
        assertTrue(false);
    }
}

После этогоЯ запускаю тест.Вот что я получил:

org.junit.platform.launcher.core.DefaultLauncher handleThrowable
warning: TestEngine with ID 'junit-vintage' failed to discover tests
java.lang.NoClassDefFoundError: org/junit/platform/engine/support/filter/ExclusionReasonConsumingFilter
Caused by: java.lang.ClassNotFoundException: org.junit.platform.engine.support.filter.ExclusionReasonConsumingFilter

org.opentest4j.AssertionFailedError: 
Expected :<true> 
Actual   :<false>

Результат оказался таким, как я ожидал.Но предупреждение смутило меня.Что означает предупреждение?

Ответы [ 2 ]

0 голосов
/ 21 сентября 2018

Я решил эту проблему, обновив свою интеллигентную идею с 2017.2 до 2018.2.4.Но я так и не понял, что вызвало и почему это решило.

Спасибо за ваши дружеские ответы и комментарии.

0 голосов
/ 21 сентября 2018

Используйте версию 5.2.0 junit-jupiter-engine на данный момент с Surefire 2.22.0.

<dependencies>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-engine</artifactId>
        <version>5.2.0</version>
        <scope>test</scope>
    </dependency>
</dependencies>

Похоже, вы поражены https://issues.apache.org/jira/browse/SUREFIRE-1564, который описывает известную проблему, которую Surefire2.22.0 внутренне остается в версии 1.2.0 для всех junit-platfrom-xyz артефактов.

...