Surefire на самом деле не запускает тесты - PullRequest
0 голосов
/ 16 апреля 2020

Мой проект Maven использует плагин Surefire для выполнения тестов. Приложение написано с помощью Spring Boot. Я не использую родителя Spring Boot - я хочу использовать другого родителя - но я импортировал spring-boot-dependencies . Тесты написаны с помощью JUnit, и у меня есть junit-jupiter-api , junit-jupiter-engine и spring-test на моем пути к классам.

Один из тестов - это очень простой ExampleTest, который находится в src / test / java:

package it.mulders.brainfuckjvm.demoapp;

import org.junit.jupiter.api.Test;

import static org.assertj.core.api.Assertions.assertThat;

public class ExampleTest {
    @Test
    public void yes() {
        assertThat(true).isTrue();
    }
    @Test
    public void no() {
        assertThat(true).isFalse();
    }
}

Когда я запускаю mvn clean test --pl demo-app -Dtest=ExampleTest -X, этот тест не run.

Поскольку я добавил -X, у меня очень подробное ведение журнала, и JAR-файл загрузчика Surefire и файлы конфигурации впоследствии не удаляются. Поэтому я проверяю surefire3290618242954546634tmp , чтобы найти:

#surefire
#Thu Apr 16 11:11:50 CEST 2020
tc.0=it.mulders.brainfuckjvm.demoapp.ExampleTest
pluginPid=8240

...
(tens of lines omitted for brevity)
...

providerConfiguration=org.apache.maven.surefire.junitplatform.JUnitPlatformProvider

Все это выглядит нормально. Он обнаруживает тест, который я хочу запустить, и выглядит знакомым для другого модуля в том же проекте, который не использует Spring Boot. Этот модуль выполняет свои тесты. Тем не менее, запись такова:

[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ demo-app ---

...

[INFO] 
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------

...

[DEBUG] Forking command line: /bin/sh -c cd /path/to/brainfuck-jvm/demo-app && /Library/Java/JavaVirtualMachines/graalvm-ce-java8-20.0.0/Contents/Home/jre/bin/java -jar /path/to/brainfuck-jvm/demo-app/target/surefire/surefirebooter7731933888241020050.jar /path/to/brainfuck-jvm/demo-app/target/surefire 2020-04-16T11-11-49_920-jvmRun1 surefire3290618242954546634tmp surefire_03070161998729763620tmp
[INFO] 
[INFO] Results:
[INFO] 
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[INFO] 

Для справки, весь проект можно найти на GitHub . Модуль, который работает нормально - язык , а тот, который не работает webapp . Обратите внимание, что для запуска тестов вам понадобится GraalVM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...