使用coverage統(tǒng)計python web項目代碼覆蓋率的方法詳解
本文實例講述了使用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的文件對應目錄下
2.2核心參數(shù)---report
有了覆蓋率統(tǒng)計結(jié)果文件,只需要再運行report參數(shù),就可以在命令里看到統(tǒng)計的結(jié)果。

2.3核心參數(shù)---生成html
最帥最酷的功能了,直接生成html的測試報告。

testhtml是你要生成的html文件夾的名稱,這個可以自定義,生成的文件同樣在你的.py的文件目錄下
這里有一個的預覽的html文件,點擊可以看看效果
http://nedbatchelder.com/files/sample_coverage_html/,里面對于覆蓋于未覆蓋的代碼都有高亮顯示,這個就不多說了
html參數(shù)說明:
| Stmts | 總的有效代碼行數(shù)(不包含空行和注釋行) |
| Miss | 未執(zhí)行的代碼行數(shù)(不包含空行和注釋行) |
| Branch | 總分支數(shù) |
| BrMiss | 未執(zhí)行的分支數(shù) |
| Cover | 代碼覆蓋率 |
| Missing | 未執(zhí)行的代碼部分在源文件中行號 |
最后給個忠告:
通過對coverage的學習,其實你用用就會發(fā)現(xiàn),問題還是很多的,所以其實這個的意義也不大,但是聊勝于無;
這是別人總結(jié)的,覺得很好,就復制過來了,大家可以想下:
a. 覆蓋率數(shù)據(jù)只能代表你測試過哪些代碼,不能代表你是否測試好這些代碼。
b. 不要過于相信覆蓋率數(shù)據(jù)。
c. 路徑覆蓋率 < 判定覆蓋 < 語句覆蓋
d. 測試人員不能盲目追求代碼覆蓋率,而應該想辦法設(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è)計有所幫助。
相關(guān)文章
scrapy redis配置文件setting參數(shù)詳解
這篇文章主要介紹了scrapy redis配置文件setting參數(shù)詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-11-11
基于Python實現(xiàn)一個簡易的數(shù)據(jù)管理系統(tǒng)
為了方便的實現(xiàn)記錄數(shù)據(jù)、修改數(shù)據(jù)沒有精力去做一個完整的系統(tǒng)去管理數(shù)據(jù)。因此,在python的控制臺直接實現(xiàn)一個簡易的數(shù)據(jù)管理系統(tǒng),包括數(shù)據(jù)的增刪改查等等。感興趣的可以跟隨小編一起學習一下2021-12-12
Python小程序編程實現(xiàn)一鍵自動整理文件解壓文件
這篇文章主要為大家介紹了Python小程序編程實現(xiàn)一鍵自動整理文件解壓文件示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02
機器學習之數(shù)據(jù)清洗及六種缺值處理方式小結(jié)
本文主要介紹了機器學習之數(shù)據(jù)清洗及六種缺值處理方式小結(jié),包括刪除空行、填充平均值、中位數(shù)、眾數(shù)、線性插值和隨機森林填充,具有一定的參考價值,感興趣的可以了解一下2025-03-03
一個基于flask的web應用誕生 bootstrap框架美化(3)
一個基于flask的web應用誕生第三篇,這篇文章主要介紹了前端框架bootstrap與flask框架進行整合,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04

