当前位置:  开发笔记 > 编程语言 > 正文

通过Maven使用Junit类别运行Cucumber测试

如何解决《通过Maven使用Junit类别运行Cucumber测试》经验,为你挑选了0个好方法。

我有一个包含多个模块和一个共同父模块的maven项目.在这个项目中,有一些单元测试与Junit以及surefire一起运行,以及BDD Cucumber集成测试.我想运行两个单独的作业,一个用于运行所有单元测试,另一个用于运行BDD/Integration测试.为了做到这一点,我使用Junit类注释注释了我的BDD运行器类,如下所示:

@RunWith(Cucumber.class)
@CucumberOptions(
                tags = { "@ATagToBeRun", "~@ATagNotToBeRun","~@ToBeImplemented" },
                dryRun = false, strict = true, 
                features = "src/test/resources/cucumber/testing",
                glue = { "com.some.company.test",
                        "com.some.company.another.test"})
@Category(value = IntegrationTest.class)
public class FlowExecutionPojoTest {
}

我在父级中创建了一个Maven配置文件,该配置文件pom使用了maven-surefire-plugin旨在根据组过滤测试的功能.这是我的maven配置:

     
        
            info.cukes
            cucumber-java
            1.2.4
            test
        

        
            info.cukes
            cucumber-junit
            1.2.4
            test
        

        
            info.cukes
            cucumber-spring
            1.2.4
            test
        
        
            info.cukes
            cucumber-jvm-deps
            1.0.5
            test
        
    

    
        testJewels
        
            true
        
        
            ../my-module
        
        
            
                
                    org.apache.maven.plugins
                    maven-surefire-plugin
                    2.19.1
                    
                        com.some.company.IntegrationTest
                    
                
            
        
    

我所期望的是,当我运行mvn test -PtestJewels带有标签中包含的类别注释的类时,应该执行.实际上,没有一个带注释的类被执行.

值得注意的一点是,当我使用maven-surefire-plugin版本2.18时,这有效,但是从版本2.18.1开始,它没有.根据页面底部的文档,版本2.18.1中有关于继承类别的更改,但在我的情况下,它们是在

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有