maven - 可怜的排除方法专家

标签 maven mutation-testing pitest

我试图从改变某些 I/O 方法(例如“关闭”和“刷新”)中排除 PIT。这是我的 Maven 配置:

<plugin>
    <groupId>org.pitest</groupId>
    <artifactId>pitest-maven</artifactId>
    <version>1.1.3</version>
    <configuration>
        <targetClasses>
            <param>my.package.*.*</param>
        </targetClasses>
        <targetTests>                   
            <param>my.package.*.*</param>
        </targetTests>
        <excludedClasses>
            <param>my.generated.*</param>
            <param>**.*IT</param>                                
        </excludedClasses>
        <excludedMethods>
            <param>close</param>
            <param>flush</param>
        </excludedMethods>
        <reportSets>
            <reportSet>
                <reports>
                    <report>report</report>
                </reports>
            </reportSet>
        </reportSets>
    </configuration>
</plugin>

排除类似乎有效,但排除方法无效。即 PIT 结果仍然表示删除“close”和“flush”调用对测试结果没有影响。

问题 : 我错过了什么?

最佳答案

排除方法用于避免在与提供的名称列表匹配的方法中创建突变体。

我认为您希望做的是停止创建删除关闭和刷新方法调用的突变体。这可以使用 avoidCallsTo 来完成。范围。

关于maven - 可怜的排除方法专家,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37742396/

相关文章:

java - 即使在 persistence.xml 中指定,JPA 2.1 也不会从 .sql 文件插入行

java - org.testng.TestNGException : sun. 安全.provider.certpath.SunCertPathBuilderException

java - 无法定位 Javac 编译器 maven sonar :sonar

java - Pitest 无法检测测试类别

drools - Drools突变测试有没有测试框架

java - 我的 PITEST 无法运行。覆盖生成minion异常退出。我需要帮助来正确配置我的 pom.xml

Maven跨项目集成

.net - 在Stryker.Net测试中配置多个项目文件

java - PITest 问题 : property 'mainClass' is final and cannot be changed any further

java - 为什么 pitest 在命令行上使用 maven,而不是在 Jenkins-Pipeline 中?