詳細(xì)使用方法見randoop官網(wǎng): https://randoop.github.io/randoop/manual/index.html
測(cè)試程序之前,先檢測(cè)下你的Randoop是否配置好:
打開cmd,輸入命令 java -ea -classpath %RANDOOP_JAR% randoop.main.Main help
用randoop測(cè)試java類:
比如測(cè)試一個(gè)Triangle.java程序(代碼見本人軟件測(cè)試assertEquals的博客),首先提取出Triangle.class,然后創(chuàng)建一個(gè)txt文件命名為myclasses.txt,文件內(nèi)容為測(cè)試的類名(僅是類名,無后綴),都放在同一個(gè)目錄下,比如放在E:\test文件夾內(nèi)。
測(cè)試開始:在cmd輸入命令 java -classpath .;%RANDOOP_JAR% randoop.main.Main gentests --classlist=myclasses.txt --timelimit=6
▲1‘ 輸入命令的路徑為防止class和txt文件的路徑
2’ classpath是一個(gè)橫杠,后面classlist和timelimit是兩個(gè)橫杠
3‘ classlist后面是包含要測(cè)試類名的txt文件名,timelimit是測(cè)試運(yùn)行時(shí)間限制
4' cmd切換目錄的方法:磁盤的切換直接輸入 E:即可,若要進(jìn)入某個(gè)文件夾,逐次輸入 cd foldername
若是運(yùn)行成功,會(huì)在當(dāng)前目錄下出現(xiàn)兩個(gè)測(cè)試結(jié)果的java文件。
▲有時(shí)候運(yùn)行該命令到會(huì)出現(xiàn)如下錯(cuò)誤:
問題出在jdk的問題,解決方法:
cmd輸入 java -version 查看jdk版本;然后在環(huán)境變量設(shè)置里查看JAVA_HOME和Path里面的jdk版本,不一樣的話,就是jdk沖突問題,在path和classpath里面講java的路徑提到最前面,將JAVA_HOME的路徑加上英文雙引號(hào);然后確定后重啟運(yùn)行上述命令。若是還是未解決,則在c盤windows該目錄下C:\Windows\System32 搜索java,刪掉java的相關(guān)文件即可。
用Randoop測(cè)試類的方法:
同上述同一個(gè)目錄下,先刪去生成的兩個(gè)測(cè)試類的java文件,新建mymethod.txt文件放置類名和方法名(如圖以Triangle為例),格式如下:
cons:類名.<init>(類型1,類型2.....)
method:類名.方法名(類型1,類型2.....)
method:類名.方法名(類型1,類型2.....)
method:類名.方法名(類型1,類型2.....)
運(yùn)用classlist和methodlist命令測(cè)試。
創(chuàng)建好后,在cmd輸入命令 java -classpath .;%RANDOOP_JAR% randoop.main.Main gentests --classlist=myclasses.txt --methodlist=mymethods.txt --timelimit=6
運(yùn)行成功后在當(dāng)前目錄下會(huì)生成兩個(gè)名字同第一個(gè)測(cè)試相同的java文件,不過內(nèi)容不一樣。
http://www.cnblogs.com/1996swg/p/7151796.html