标签: jnario

如何让maven surefire正确执行JUnit和TestNG测试?

有一段时间,可以配置maven surefire在一个构建中执行jUnit测试和testNG测试.我不会扩展我为什么这样做的原因(好的,提示:testNG是我们的标准框架,但是像jnario这样的框架需要jUnit).

一般的方法是配置如下所示的surefire插件:

<plugin>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>${surefire.version}</version>
    <dependencies>
        <dependency>
            <groupId>org.apache.maven.surefire</groupId>
            <artifactId>surefire-junit47</artifactId>
            <version>${surefire.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.maven.surefire</groupId>
            <artifactId>surefire-testng</artifactId>
            <version>${surefire.version}</version>
        </dependency>
    </dependencies>
</plugin>
Run Code Online (Sandbox Code Playgroud)

(取自这里)

这很有效,jUnit测试和testNG测试得到执行.

但是 - 现在我看到testNG也尝试执行jUnit测试(反之亦然) - 当然没有成功,因为它不会看到任何注释,但看起来它重新标记了测试"传递"...无论如何,一些报告工具不再显示jUnit测试中的测试失败,除非我评论第二个依赖项.

有没有更好的方法来配置surefire,以便两个框架的测试只能由他们的测试运行者执行?

java junit testng maven jnario

6
推荐指数
2
解决办法
4941
查看次数

标签 统计

java ×1

jnario ×1

junit ×1

maven ×1

testng ×1