代码之家  ›  专栏  ›  技术社区  ›  Ducaz035

Pitest增量分析找不到本地哈希文件

  •  0
  • Ducaz035  · 技术社区  · 5 年前

    我目前正在尝试pitest,到目前为止它工作正常。然而,这是相当缓慢的,目前唯一的解决方案是使用增量分析,这可能会解决缓慢。我试着按照文档中描述的那样设置它。以下是我的配置:

     <build>
    <plugins>
      <plugin>
        <executions>
          <execution>
            <id>pitest-mutation-coverage</id>
            <goals>
              <goal>mutationCoverage</goal>
            </goals>
          </execution>
        </executions>
        <groupId>org.pitest</groupId>
        <artifactId>pitest-maven</artifactId>
        <version>1.4.6</version>
        <configuration>
          <threads>8</threads>
          <timestampedReports>false</timestampedReports>
          <historyInputFile>${project.basedir}/pitest.history</historyInputFile>
          <historyOutputFile>${project.basedir}/pitest.history</historyOutputFile>
          <avoidCallsTo>
            <avoidCallsTo>java.util.logging</avoidCallsTo>
            <avoidCallsTo>org.slf4j</avoidCallsTo>
          </avoidCallsTo>
          <mutators>
            <mutator>DEFAULTS</mutator>
          </mutators>
        </configuration>
      </plugin>
    </plugins>
    

    然而,在实践中,我没有看到pitest将historyinput和historyoutput考虑在内,而是在我看到的日志中

    [INFO] Will read and write history at /var/folders/x1/qp5hhks571q0drb7kd7vjn0c0000gn/T/my.module.groupId.artifactId.version_pitest_history.bin
    

    我试过很多不同的设置,但似乎都不起作用。 我有什么遗漏吗?

    更新

    最后,发现插件定义来自父pom,并且在继承子pom中重写它是部分可能的。

    0 回复  |  直到 5 年前
        1
  •  1
  •   henry    5 年前

    您发布的配置工作正常。

    你只会看到信息

    [INFO] Will read and write history at /var/folders/x1/qp5hhks571q0drb7kd7vjn0c0000gn/T/my.module.groupId.artifactId.version_pitest_history.bin

    如果你有 设置 withHistory 成真。

    如果两个都设置好了,就会有一个bug停止工作。这需要修正,但设置两者都没有意义。

    有历史 是一个方便标志,它将输入和输出文件都设置为指向临时目录中的某个位置。

    输入/输出文件参数用于需要更细粒度控制的情况(例如,输入文件在团队中共享)。

    所以不管是哪一套 witHistory 或者显式地设置历史文件,不要两者都做。

    推荐文章