设置provider解决maven找不到JUnit 5测试样例

问题描述

尝试复现一个用大模型生成测试样例的工作,但使用maven生成的JUnit 5测试样例死活不执行。又不想用命令行运行,因此进行排查

基本知识

<dependencies>

junit-jupiter-api JUnit 5写代码时调用的库
junit-jupyter-engine 运行JUnit 5测试样例的引擎(TestEngine)

<plugins>

maven-surefire-plugin 执行 mvn test时实际执行的插件。它需要一个Provider来提供测试样例,需要一个TestEngine的实现来执行测试样例

问题细节与分析

已经正确设置了<dependencies>,也确认了测试样例的类被正确编译,但就是不执行

分析maven执行轨迹,发现一条:

复制代码
[INFO] --- surefire:3.3.1:test (default-test) @ tullibee-api ---
[INFO] Using auto detected provider org.apache.maven.surefire.junit4.JUnit4Provider

原来是Provider出错。不知道为什么,maven-surefire-plugin自动选择Provider出错了

解决方法

手动设置Providersurefire-junit-platform。以下为样例:

复制代码
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>3.3.1</version>
            <configuration>
                    <includes>
                            <include>EClientSocket_reqContractDetails_*.java</include>
                    </includes>
            </configuration>
            <dependencies>
                    <dependency>
                        <groupId>org.apache.maven.surefire</groupId>
                        <artifactId>surefire-junit-platform</artifactId>
                        <version>3.3.1</version>
                    </dependency>
            </dependencies>
        </plugin>
相关推荐
*.✧屠苏隐遥(ノ◕ヮ◕)ノ*.✧1 天前
《苍穹外卖》- day01 开发环境搭建
spring boot·后端·spring·maven·intellij-idea·mybatis
Getgit1 天前
Linux 下查看 DNS 配置信息的常用命令详解
linux·运维·服务器·面试·maven
tkevinjd1 天前
4-初识Maven
java·maven
多多*2 天前
图解Redis的分布式锁的历程 从单机到集群
java·开发语言·javascript·vue.js·spring·tomcat·maven
aloha_7892 天前
乐信面试准备
java·spring boot·python·面试·职场和发展·maven
摇滚侠2 天前
解决 IntelliJ IDEA 中 Maven 管理界面不是层级结构的问题
java·maven·intellij-idea
a程序小傲3 天前
Maven 4 要来了:15 年后,Java 构建工具迎来“彻底重构”
java·开发语言·spring boot·后端·spring·重构·maven
凌冰_3 天前
Thymeleaf Maven+Servlet+Mysql图书框架—4(十)
mysql·servlet·maven
潇凝子潇4 天前
在 Maven 中跳过单元测试进行本地打包或排除某个项目进行打包
java·单元测试·maven
weixin_462446234 天前
在宝塔 Nginx 上安装与配置 lua-cjson 教程
nginx·junit·lua