亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Clover在JUnit中的使用

系統(tǒng) 1570 0

下面還是簡要的介紹一下Clover在JUnit中的使用(構(gòu)建工具為Ant):
??? 1.在使用Clover做測試覆蓋率分析之前請確保您的代碼及測試代碼無誤。
??? 2.如果采用Ant作為構(gòu)建工具,則將clover.jar放入Ant的classpath下。也可采用另一種方法,可先將clover.jar及Clover中的另一個(gè)jar包c(diǎn)enquatasks.jar放入項(xiàng)目的lib下,采用cenquatasks.jar中的extendclasspath方法將clover.jar擴(kuò)展到Ant下,在build.xml中加入以下代碼:

< taskdef? resource ="com/cenqua/ant/antlib.xml" ?classpath ="lib/cenquatasks.jar" />
< extendclasspath? path ="lib/clover.jar" />
< taskdef? resource ="clovertasks" ?classpath ="lib/clover.jar" />
??? 3.添加clovertask到Ant中,如下:
< taskdef? resource ="clovertasks" />
??? 4.在build.xml中加入clover的初始化任務(wù):
?? <!-- ?clover.init -->
??
< target? name ="clover.init" >
????
< clover-setup? initString ="clover_coverage.db" ?preserve ="true" />
??
</ target >
注意:步驟3中的代碼可放入4中。
??? 5.加入一個(gè)或多個(gè)運(yùn)行clover report的任務(wù),最后的結(jié)果有多種輸出方式:html、pdf、swing、xml等等。
其中,swing方式的代碼如下:
? <!-- ?show?the?clover?coverage?result?with?swing? -->
???
< target? name ="clover.swing" ?depends ="clover" >
????????
< clover-view />
???
</ target >
html方式如下:
? <!-- ?show?the?clover?coverage?result?with?html?file? -->
?
< target? name ="clover.html" ?depends ="clover" >
????
< clover-report >
??????
< current? outfile ="${target.dir}/clover" ?title ="Clover?Report" >
????????
< format? type ="html" /> ?
??????
</ current > ?????
????
</ clover-report >
??
</ target >
??? 上面代碼中都depends="clover",這里clover任務(wù)只是為了簡潔而設(shè),代碼如下:
<!-- ?runs?the?clover? -->
????
< target? name ="clover" ?depends ="clean,clover.init,compile,test" />
??? 通過以上代碼的設(shè)置即可運(yùn)行clover.swing 或者clover.html運(yùn)行Clover查看測試代碼的覆蓋率。測試結(jié)果如下圖所示:
???? 其中build.xml中的運(yùn)行JUnit測試代碼的任務(wù)如下:
? <!-- ?runs?the?tests? -->
?????
< target? name ="test" >
????????
< java? classname ="MoneyTest" ??fork ="yes" >
????????????
< classpath? refid ="build.classpath" />
????????
</ java >
?????
</ target >
這是通過java命令運(yùn)行的,也就是在MoneyTest.java中有main方法:
public ? static ? void ?main(String?args[])? {
????????junit.textui.TestRunner.run(MoneyTest.
class );
????}
還可以直接通過junit命令運(yùn)行,如下:
< target? name ="unittest" ?depends ="clover.init,compile" ?description ="Test?the?application" >
????????
< taskdef? resource ="clovertasks" />
????????
< echo? message ="Testing?the?application?with?junit .." />
????????
< junit? haltonfailure ="true" ?printsummary ="true" ??fork ="true" >
????????????????
< classpath? refid ="build.classpath" />
????????????????
< classpath >
????????????????????????
< pathelement? path ="${ant.home}/lib/clover.jar" />
????????????????
</ classpath >
????????????????
< formatter? type ="brief" ?usefile ="false" />
????
<!-- ????????????<test?name="MoneyTest"/>??? -->
????????????????
< batchtest >
????????????????????????
< fileset? dir ="${build}" ?includes ="**/*Test.class" />
????????????????
</ batchtest >
????????
</ junit >
</ target >
以上兩種test方法都可使用。
??? 在所有任務(wù)中,首先要運(yùn)行clover.init這樣就能啟動clover,對后面的任務(wù)進(jìn)行監(jiān)控并adapt一些操作,在隨后的compile過程中,clover會記錄所編譯的java文件的各種數(shù)據(jù)并存入其db數(shù)據(jù)庫,clover會監(jiān)控隨后運(yùn)行的UnitTest,計(jì)算測試的覆蓋率并寫入數(shù)據(jù)庫。這里有一點(diǎn)要注意:無論是采用java方式還是junit方式運(yùn)行test房間,都要在命令中加入屬性fork="true",這是因?yàn)閏lover要在JVM shutdown的時(shí)候?qū)?shù)據(jù)寫入數(shù)據(jù)庫,如果沒有這個(gè)屬性,就會出現(xiàn)“no coverage data found for *.db”錯(cuò)誤,出現(xiàn)測試覆蓋率均為0的結(jié)果。

Clover在JUnit中的使用


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 精品久久久久久久一区二区伦理 | 一本大道香蕉中文在线高清 | 99精品高清不卡在线观看 | 免费毛片视频 | 亚洲国产欧美另类 | 久久九九亚洲精品 | 波多野吉衣一区二区三区在线观看 | 国产呦系列 欧美呦 日韩呦 | 色综合婷婷在线 | 国产精品国内免费一区二区三区 | 奇米影视778成人四色狠狠 | 欧美 国产 日本 | 四虎精品成人a在线观看 | 欧美理论大片清免费观看 | 日本免费新一区二区三区 | 色婷婷色综合 | 性做久久| 国产不卡免费视频 | 在线播放国产一区二区三区 | 久久久免费观看视频 | 国产精品自在线拍 | 久久青草91线频免费观看 | 狠狠色噜噜狠狠狠狠2018 | 黄片a级毛片| 日本人一级毛片免费完整视频 | 欧美精品亚洲精品日韩一区 | 欧美三级a | 波多野结衣久久 | 狠狠干狠狠色 | 日本黄色录象 | 国产一级一国产一级毛片 | 国产色a在线观看 | 99热久久这里只精品国产ww | 国产国语videosex另类 | 国产成人一区二区三区精品久久 | 成人爽a毛片在线视频 | 久久99精品一级毛片 | 天天射日日操 | 大伊香蕉精品视频在线天堂 | 国产a高清| 久在线精品视频 |