热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何使用MavenFailsafe插件运行JUnit5集成测试?

如何解决《如何使用MavenFailsafe插件运行JUnit5集成测试?》经验,为你挑选了2个好方法。

Mail Failsafe插件在我运行命令时找不到我的JUnit 5集成测试mvn clean failsafe:integration-test,尽管它可以找到文件.

我有junit-jupiter-apijunit-jupiter-engine作为测试依赖项:


    5.0.1



    
        org.junit.jupiter
        junit-jupiter-api
        ${junit.jupiter.version}
        test
    
    
        org.junit.jupiter
        junit-jupiter-engine
        ${junit.jupiter.version}
        test
    

我的集成测试是正确命名(下面的**/*IT.java,**/IT*.java或者**/*ITCase.java,其中包括由故障安全默认值,由神火排除默认情况下).

有什么办法可以在Failsafe中使用JUnit 5测试吗?



1> Panda TG Att..:

编辑:这个答案之前是正确的maven-failsafe-plugin:2.22.0.请参阅davidxxx对理想和最新解决方案的回答.


maven-failsafe-plugin目前不支持JUnit的5,开箱即用.

但是,与之一样maven-surefire-plugin,您可以maven-failsafe-plugin通过指定org.junit.platform:junit-platform-surefire-provider:1.0.1与早期版本的依赖关系来运行JUnit 5测试maven-failsafe-plugin:2.19.1.

它不具有故障保护的当前版本2.20(在该神火有错误的方式相同)由于工作的OutOfMemory错误.

有关插件配置的示例,请参阅下面的内容:


    1.0.1



    maven-failsafe-plugin
    2.19.1
    
        
            org.junit.platform
            junit-platform-surefire-provider
            ${junit.platform.version}
        
    

你可以在GitHub上找到这个工作的完整例子(和一个失败的例子).要测试它是否有效,您可以运行mvn clean failsafe:integration-test.


对我来说,故障保护仍然没有进行集成测试.万无一失.
github.com/TickleThePanda/junit5-failsafe-example上的repo被破坏,并且没有运行集成测试,因为failafe插件中没有执行元素.

2> davidxxx..:

请注意,从JUnit 5文档开始:junit-platform-surefire-provider不应再使用:

由于神火释放2.22.0时, junit-platform-surefire-provider从JUnit的团队已被弃用,并将在JUnit平台的后续版本中停止使用。

此外,您还可以阅读maven-surefire-plugin文档:

使用JUnit 5平台

要开始使用JUnit Platform,您需要至少TestEngine在项目中添加一个 实现。例如,如果要使用Jupiter编写测试,请将测试工件添加junit-jupiter-engine 到POM中的依赖项

因此,您必须指定此test依赖关系:


    5.2.0
 


     [...]
     
         org.junit.jupiter
         junit-jupiter-engine
         ${junit-jupiter.version}
         test
     
     [...] 

maven-failsafe-plugin声明可能是那样简单:


               
        
            maven-failsafe-plugin
            2.22.0
        
    
  


推荐阅读
author-avatar
sweeteenring
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有