Python代碼覆蓋率統(tǒng)計(jì)工具coverage.py用法詳解
1、安裝coverage
pip install coverage
安裝完成后,會(huì)在Python環(huán)境下的Scripts下看到coverage.exe;
2、Coverage 命令行
coverage run
運(yùn)行一個(gè).py的文件方式:python test.py
現(xiàn)在使用coverage執(zhí)行.py的文件方式:coverage run test.py
會(huì)自動(dòng)生成一個(gè)覆蓋率統(tǒng)計(jì)結(jié)果文件(data file):.coverage,這個(gè)文件在你的test.py的文件對(duì)應(yīng)目錄下。
coverage report
有了覆蓋率統(tǒng)計(jì)結(jié)果文件,只需要再運(yùn)行report參數(shù),就可以在命令里看到統(tǒng)計(jì)的結(jié)果。
coverage html -d covhtml
生成html的測(cè)試報(bào)告。
輸出結(jié)果意義
Stmts 總的有效代碼行數(shù)(不包含空行和注釋行)Miss 未執(zhí)行的代碼行數(shù)(不包含空行和注釋行)Branch 總分支數(shù)BrMiss 未執(zhí)行的分支數(shù)Cover 代碼覆蓋率Missing 未執(zhí)行的代碼部分在源文件中行號(hào)
命令詳解
coverage run --help # 打印幫助信息coverage run test_xxx.py # 執(zhí)行test_xxx.py文件,會(huì)自動(dòng)生成一個(gè)覆蓋率統(tǒng)計(jì)結(jié)果文件.coveragecoverage report -m(帶有詳細(xì)信息) # 查看coverage報(bào)告,讀取.coverage文件并打印到屏幕上,可以在命令行里看到統(tǒng)計(jì)結(jié)果coverage html -d report # 生成顯示整體的covergae html形式的報(bào)告 (在當(dāng)前同路徑下生成一個(gè)report文件夾,里面包含html形式的報(bào)告。通過查看report文件夾下的內(nèi)容即可)
3、其他功能
除了使用命令行,還可以在python代碼中直接調(diào)用coverage模塊執(zhí)行代碼覆蓋率的統(tǒng)計(jì)。使用方法也非常簡(jiǎn)單:
import coveragecov = coverage.coverage()cov.start()# .. run your code ..cov.stop()cov.save()
文檔:https://coverage.readthedocs.io/en/latest/cmd.html
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. ThinkPHP5 通過ajax插入圖片并實(shí)時(shí)顯示(完整代碼)2. ASP.NET MVC通過勾選checkbox更改select的內(nèi)容3. Android實(shí)現(xiàn)圖片自動(dòng)切換功能(實(shí)例代碼詳解)4. jsp+mysql實(shí)現(xiàn)網(wǎng)頁(yè)的分頁(yè)查詢5. Python使用oslo.vmware管理ESXI虛擬機(jī)的示例參考6. 存儲(chǔ)于xml中需要的HTML轉(zhuǎn)義代碼7. javascript xml xsl取值及數(shù)據(jù)修改第1/2頁(yè)8. 解決Python paramiko 模塊遠(yuǎn)程執(zhí)行ssh 命令 nohup 不生效的問題9. JavaScript Tab菜單實(shí)現(xiàn)過程解析10. 使用AJAX(包含正則表達(dá)式)驗(yàn)證用戶登錄的步驟
