java - 空手道框架无法在多模块 Spring 框架中找到测试
问题描述
我尝试使用 SpringBootTest 运行我的空手道测试,但出现以下错误:
org.junit.platform.launcher.core.DefaultLauncher handleThrowable
WARNING: TestEngine with ID 'junit-vintage' failed to discover tests
org.junit.platform.commons.util.PreconditionViolationException: Could not load class with name: com.user.EmployeeKarateTest
空手道测试
import com.user.config.AbstractTestDefinition;
import com.intuit.karate.Results;
import com.intuit.karate.Runner;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
class EmployeeKarateTest extends AbstractTestDefinition {
@Test
void testParallel() {
Results results = Runner.path("classpath:com/user/").tags("~@ignore").parallel(5);
assertEquals(0, results.getFailCount(), results.getErrorMessages());
}
}
等级制度
.
├── common
│ ├── pom.xml
│ └── src
│ └── main
│ └── resources
│ └── application.properties
├── karate
│ ├── karate.iml
│ ├── pom.xml
│ ├── src
│ ├── main
│ │ └── resources
│ │ └── karate-config.js
│ └── test
│ └── java
│ └── com
│ └── user
│ ├── config
│ │ ├── AbstractTestDefinition.java
│ │ └── KarateContextConfiguration.java
│ ├── DeleteEmployeeTest.feature
│ ├── EmployeeKarateTest.java
│ ├── GetEmployeeTest.feature
│ ├── PostEmployeeTest.feature
│ └── PutEmployeeTest.feature
├── local-server
│ ├── pom.xml
│ └── src
│ └── main
│ └── java
│ └── localServer
│ ├── controllers
│ │ ├── GreetingController.java
│ │ └── PersonController.java
│ ├── entities
│ │ └── Person.java
│ ├── services
│ │ └── PersonService.java
│ └── StartLocalServer.java
├── pom.xml
主 POM
<build>
<testResources>
<testResource>
<directory>src/test/java/com/user</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</testResource>
</testResources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<configuration>
<excludes>
<exclude>com/user/*.java</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
任何帮助将不胜感激。任何帮助将不胜感激。任何帮助将不胜感激。任何帮助将不胜感激。任何帮助将不胜感激。任何帮助将不胜感激。任何帮助将不胜感激。任何帮助将不胜感激。任何帮助将不胜感激。
解决方案
首先我尝试了这个并且它有效:
mvn test -Dtest=EmployeeKarateTests
但是是mvn test
的不起作用。但是当你<plugins>
注释掉pom.xml
.
我留给你找出库依赖项(spring boot test、junit 5 / jupiter 和 maven surefire)的神奇组合,它将起作用:)
推荐阅读
- laravel - 使用主管和 docker 运行 cron
- python - Pyomo:努力让约束发挥作用
- c# - 将 XML 节点复制到另一个 XML 包括子节点
- python - 按标签分隔数据框(将数据框转换为 numpy 数组)
- charts - Anychart DataArea 背景描边部分不可见
- domain-driven-design - 领域驱动设计 - ValueObjects 中的继承
- c# - C#:如何使用变量嵌套和变量类型遍历嵌套列表中的所有元素?
- python - 从 API 怪异行为解析分页 JSON 响应
- blazor - 重定向到登录页面,而不是 Blazor 中的弹出式登录
- c - printf() 没有首先出现