變異測試是通過改變被測對象的源碼,比較單元測試用例的結果,來判斷單元測試用例的質量。了解不是很深,只能粗粗介紹,歡迎大家補充。
網上發現變異測試的資料很少,大多是學術論文為主。
變異測試的公主要是mujava與muclipse,muclipse是基于mujava的,并且集成于eclipse上的插件,官網介紹
mujava http://cs.gmu.edu/~offutt/mujava/
muclipse http://muclipse.sourceforge.net/index.php
根據官網一步步來,居然沒有成功,逐個改變參數摸索,終于能出結果了,所以寫下這邊文章,希望減少大家研究的時間
1. 安裝muclipse
由于官網提供的下載url打不開,只好網上找個edu.ncsu.muclipse_1.3.0.jar下載,放入eclipse plugins目錄下,重新啟動eclipse,就算安裝上啦,eclipse的這種安裝方法真簡單。
2. 準備的測試案例
package demo1;
public class Example {
public int multiply(int a, int b) {
return a * b;
}
}
package demo1;
public class ExampleTest {
public void setUp() throws Exception {
}
public void tearDown() throws Exception {
}
public int testMultiply()
{
Example ex = new Example();
return ex.multiply(1, 1);
}
}
3. 配置環境
1. 新建或者導入項目,下載extendedOJ.jar包,導入到Libraries
右擊project name -> properties -> java build path -> Libraries -> Add External JARs, select it and click ok
in source tab, 可以修改output folder,就是編譯后的.class文件的地址,這里默認是bin
2. 編譯項目,可以在bin里面看到編譯后的.class文件
右鍵項目名,build project
3. 生成變異后的源文件
1. 右鍵項目名-> run as -> run configuration...
配置Deriectories
配置Operator
click run 生成變異代碼,具體見result目錄
4.eclipse里顯示mutation結果
windows -> show view
注意這邊只有method-level有變異的實例
5. 執行test
配置muclipse test:右擊項目名->run as -> run configuration
配置testing operation : 由于生產的變異實例只有method level的,所以class-level的不要勾上,不然會有錯誤,click run button
6. 看結果
點擊刷新按鈕
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。