pitest 报告不能混合 JUnit 4 和 JUnit 5 测试

pitest report can't mix JUnit 4 and JUnit 5 tests

最近,我向我们的团队介绍了 Pitest 作为突变测试工具来诊断测试质量,我们很喜欢它。

在我们的代码库中,我们有很多预先存在的 JUnit 4,现在我们正在 JUnit 5 中编写所有新的单元测试。 不幸的是,即使在我们尝试 运行 突变测试目标 mvn org.pitest:pitest-maven:mutationCoverage 时添加了 Pitest JUnit 5 插件,它也只会选择 JUnit 4 测试而忽略 JUnit 5 测试。

我们希望我们的报告包含 JUnit 4 和 5 测试。有没有办法(破解)生成与 JUnit 4 和 5 混合的报告?

正如 henry 的评论所指出的,我通过升级到最新版本的 pitest 解决了这个问题。这些版本对我有用:

            <plugin>
                <groupId>org.pitest</groupId>
                <artifactId>pitest-maven</artifactId>
                <version>1.7.1</version>
                <dependencies>
                    <dependency>
                        <groupId>org.pitest</groupId>
                        <artifactId>pitest-junit5-plugin</artifactId>
                        <version>0.14</version>
                    </dependency>
                </dependencies>
            </plugin>

对于 Junit5,我在 pom.xml

中使用这个“build”部分
<build>
        <plugins>
            <plugin>
                <groupId>org.pitest</groupId>
                <artifactId>pitest-maven</artifactId>
                <version>1.7.6</version>
                <dependencies>
                    <dependency>
                        <groupId>org.pitest</groupId>
                        <artifactId>pitest-junit5-plugin</artifactId>
                        <version>0.15</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>

我 运行 pi-test 使用此 命令:

 mvn test-compile org.pitest:pitest-maven:mutationCoverage