pitest excludedMethods 专家

pitest excludedMethods maven

我试图将 PIT 排除在变异某些 I/O 方法之外,例如 "close" 和 "flush"。这是我的 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>

excludedClasses 似乎有效,但 excludedMethods 无效。即 PIT 结果仍然表示删除 "close" 和 "flush" 调用对测试结果没有影响。

问题:我错过了什么?

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

我认为您希望做的是停止创建移除对 close 和 flush 方法的调用的突变体。这可以使用 avoidCallsTo 参数来完成。