Я использую spring-boot-starter-parent:2.2.6.RELEASE
и cucumber-java8:5.6.0
для выполнения тестов e2e с использованием Cucumber Runner / Spring Boot / JUnit5 / Maven Surefire. Я установил последнюю версию Jenkins Community LTS v2.222.1 на виртуальную машину Linux и подключил свой ноутбук в качестве ведомого.
Когда я выполняю тесты на своем ноутбуке с помощью IDE / командной строки, все работает нормально (с использованием mvn clean test
). Однако те же тесты не запускаются при запуске от Дженкинса. Это немного сбивает с толку, так как я использую те же настройки / инструменты.
Консоль Jenkins O / P:
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 10 source files to C:\Jenkins\workspace\Sanity\core\target\test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ project-core ---
[INFO]
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
Apr 07, 2020 1:08:45 PM net.masterthought.cucumber.ReportParser parseForFeature
INFO: File {0} does not contain features
Apr 07, 2020 1:08:45 PM net.masterthought.cucumber.ReportParser parseJsonFiles
INFO: File 'C:\Users\User\AppData\Local\Temp\2\cucumber5203280546924184867.json' contains 0 features
Apr 07, 2020 1:08:45 PM net.masterthought.cucumber.ReportBuilder generateErrorPage
INFO: Unexpected error
net.masterthought.cucumber.ValidationException: Passed files have no features!
...
Консоль IDE O / P:
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 10 source files to C:\Code\project\core\target\test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ project-core ---
[INFO]
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
[INFO] Running com.x.y.z.CucumberTests
2020-04-07 13:22:52.330 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper : Neither @ContextConfiguration nor @ContextHierarchy found for test class [com.x.y.z.stepdefs.LogVerificationSteps], using SpringBootContextLoader
...
CucumberTests. java:
import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;
import org.junit.runner.RunWith;
@RunWith(Cucumber.class)
@CucumberOptions(
plugin = {"pretty", "de.monochromata.cucumber.report.PrettyReports:target"},
features = "src/test/resources/features")
public class CucumberTests {
}
Это многомодульный проект maven, функции доступны в:
root
\__core
\__src/test/resources/features/*
Так что в основном в Jenkins функции / тесты вообще не запускаются - почему это происходит, какие-нибудь идеи, ребята?