PIT是“一種用于Java的基于快速字節碼的突變測試系統,可以測試單元測試的有效性”。 這是一個非常年輕的項目,但很有希望。 它提供了一組變異運算符 ,這些變異運算符可以修改條件語句,數學運算,返回值和方法調用。
從最近發布的版本0.25開始,PIT(以實驗方式)支持基于TestNG的測試(基于JUnit的測試除外)。 要從Maven使用它,需要將pitest-maven插件添加到pom.xml:
<plugin><plugin><groupid>org.pitest</groupid><artifactid>pitest-maven</artifactid><version>0.25</version>
</plugin>
</plugin>
在許多情況下,這就足夠了。 默認情況下,inScopeClasses(用于運行的可變類和測試)和targetClasses(僅用于變異的候選對象)默認使用項目groupId,通常可以省略。 插件配置中可以配置幾個選項 。 “ mvn org.pitest:pitest-maven:mutationCoverage”執行修改后的測試并生成突變報告,默認情況下該報告保存在target / pit-reports / yyMMddHHmm目錄中。
指定類別的樣本報告(單擊放大)顯示行覆蓋率和突變覆蓋率。 盡管有100%的線覆蓋率(背景為淺綠色的線),PIT發現測試數據集無法正確覆蓋邊界條件。
參考:來自Solid Soft博客的JCG合作伙伴 Marcin Zajaczkowski的PIT和TestNG突變測試簡介 。
翻譯自: https://www.javacodegeeks.com/2012/04/introduction-to-mutation-testing-with.html