本文實例講述了使用coverage統(tǒng)計python web項目代碼覆蓋率的方法。分享給大家供大家參考,具體如下:
在使用python+selenium過程中,有時候考慮代碼覆蓋率,所以專門查了一下python的coverage,所以特此記錄
1.安裝coverage
自己電腦安裝了pip的 ? 直接:
pip install coverage
,等待安裝完成
安裝完成后,會在 C:\Python27\Scripts 下看到相關(guān)的安裝信息;
2.安裝完成以后,就是開始使用了
2.1核心參數(shù)---run
以前執(zhí)行一個.py的文件方式:
python test.py
現(xiàn)在使用
coverage
執(zhí)行.py的文件方式:
coverage run test.py
??,跑完后,會自動生成一個覆蓋率統(tǒng)計結(jié)果文件(data file):.coverage
這個文件在你的text.py的文件對應(yīng)目錄下
2.2核心參數(shù)---report
有了覆蓋率統(tǒng)計結(jié)果文件,只需要再運行report參數(shù),就可以在命令里看到統(tǒng)計的結(jié)果。
2.3核心參數(shù)---生成html
最帥最酷的功能了,直接生成html的測試報告。
testhtml是你要生成的html文件夾的名稱,這個可以自定義,生成的文件同樣在你的.py的文件目錄下
這里有一個的預(yù)覽的html文件,點擊可以看看效果
http://nedbatchelder.com/files/sample_coverage_html/,里面對于覆蓋于未覆蓋的代碼都有高亮顯示,這個就不多說了
html參數(shù)說明:
Stmts | 總的有效代碼行數(shù)(不包含空行和注釋行) |
Miss | 未執(zhí)行的代碼行數(shù)(不包含空行和注釋行) |
Branch | 總分支數(shù) |
BrMiss | 未執(zhí)行的分支數(shù) |
Cover | 代碼覆蓋率 |
Missing | 未執(zhí)行的代碼部分在源文件中行號 |
最后給個忠告:
通過對coverage的學(xué)習(xí),其實你用用就會發(fā)現(xiàn),問題還是很多的,所以其實這個的意義也不大,但是聊勝于無;
這是別人總結(jié)的,覺得很好,就復(fù)制過來了,大家可以想下:
a. 覆蓋率數(shù)據(jù)只能代表你測試過哪些代碼,不能代表你是否測試好這些代碼。
b. 不要過于相信覆蓋率數(shù)據(jù)。
c.?路徑覆蓋率 < 判定覆蓋 < 語句覆蓋
d. 測試人員不能盲目追求代碼覆蓋率,而應(yīng)該想辦法設(shè)計更多更好的案例,哪怕多設(shè)計出來的案例對覆蓋率一點影響也沒有。
關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結(jié)》、《Python面向?qū)ο蟪绦蛟O(shè)計入門與進階教程》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》及《Python入門與進階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計有所幫助。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

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