内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

統(tǒng)計(jì)代碼測試覆蓋率-Python-創(chuàng)新互聯(lián)

衡量Unit Test(單元測試)是否充分, 覆蓋率是一個必要指標(biāo), 是檢驗(yàn)單元測試的重要依據(jù), 這里針對python unittest 的單元測試覆蓋率coverage進(jìn)行分享.

成都創(chuàng)新互聯(lián),是成都地區(qū)的互聯(lián)網(wǎng)解決方案提供商,用心服務(wù)為企業(yè)提供網(wǎng)站建設(shè)、成都app軟件開發(fā)、成都小程序開發(fā)、系統(tǒng)按需求定制制作和微信代運(yùn)營服務(wù)。經(jīng)過數(shù)10年的沉淀與積累,沉淀的是技術(shù)和服務(wù),讓客戶少走彎路,踏實(shí)做事,誠實(shí)做人,用情服務(wù),致力做一個負(fù)責(zé)任、受尊敬的企業(yè)。對客戶負(fù)責(zé),就是對自己負(fù)責(zé),對企業(yè)負(fù)責(zé)。

來自官方的解釋:

Coverage.py runs on many versions of Python:

CPython 2.6, 2.7 and 3.3 through alpha 3.8.

PyPy2 6.0 and PyPy3 6.0.

Jython 2.7.1, though not for reporting.

IronPython 2.7.7, though not for reporting.

注: Coverage支持豐富的python版本

  • Install Coverage

pip install coverage

無論是Windows, Linux 還是Mac os,安裝都非常方便, 如果提示pip command not found, 請看這里或者自行百度.

測試代碼:

我們現(xiàn)在已經(jīng)installed coverage, 需要使用它, 讓我們來創(chuàng)建一個Module? 然后調(diào)用mymath.py, 代碼如下:

統(tǒng)計(jì)代碼測試覆蓋率-Python

這個module里我們定義了4個方法, 分別是add, subtract, multiply, divide(+,-,*,/)

讓我們來測試這模塊, 在call之前先要import我們的module,下面是我們的測試代碼

Use coverage run to run your progame and gather data:

然后我們就可以使用Coverage 進(jìn)行驗(yàn)證了

coverage run test_mymath.py

執(zhí)行上面命令:

統(tǒng)計(jì)代碼測試覆蓋率-Python

如果你的Module有參數(shù),你可以使用下面方法

coverage run test.py arg1 arg2

Use coverage report to report on the results:

統(tǒng)計(jì)代碼測試覆蓋率-Python

For a nice presentation, use coverage html to get annotated HTML lisitings detailing missed lines:

coverage html

使用上述命令會在目錄下生成htmlcov文件, 包含了詳細(xì)的測試報告.

統(tǒng)計(jì)代碼測試覆蓋率-Python

瀏覽器查看報告詳情

統(tǒng)計(jì)代碼測試覆蓋率-Python

統(tǒng)計(jì)代碼測試覆蓋率-Python

統(tǒng)計(jì)代碼測試覆蓋率-Python

從中不難發(fā)現(xiàn), 在test_mymath.py中我們只調(diào)用了mymath.py的add 方法, 另外3個方法沒有調(diào)用,因此代碼覆蓋率沒有達(dá)到100%, report中用紅色標(biāo)注提示我們, 而 test_mymath.py 全部代碼都被完全Coverage, 覆蓋率100%.

這么一個傻瓜式工具使用非常easy, 通過這個實(shí)例實(shí)戰(zhàn), 讓我們比較直觀的了解單元測試代碼覆蓋率的重要性, 平時的工作中可能被各種業(yè)務(wù)和框架纏繞, 沒有把中心放在這上面, 但它卻是非常重要的, 用事實(shí)和數(shù)據(jù)說話抵過千言萬語.

注: Java也有相應(yīng)的Coverage工具 jacoco, EMMA等.

參考文獻(xiàn):?https://pypi.org/project/coverage/

統(tǒng)計(jì)代碼測試覆蓋率-Python

今日精選推薦

JMeter接口測試-if控制器

JMeter數(shù)據(jù)庫操作

Jmeter接口測試-正則表達(dá)式

JMeter中文返回亂碼

Jmeter接口測試-參數(shù)化

JMeter接口測試-基礎(chǔ)

測試-感想

咨詢工作加微信

統(tǒng)計(jì)代碼測試覆蓋率-Python

掃描二維碼

歡迎自薦和推薦, 需要的微信推送簡歷!

請猛戳下面二維碼了解更多

統(tǒng)計(jì)代碼測試覆蓋率-Python

標(biāo)題名稱:統(tǒng)計(jì)代碼測試覆蓋率-Python-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://www.rwnh.cn/article2/dghsoc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、關(guān)鍵詞優(yōu)化響應(yīng)式網(wǎng)站、網(wǎng)站設(shè)計(jì)公司、網(wǎng)頁設(shè)計(jì)公司、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
长沙县| 乌鲁木齐县| 庆阳市| 栾川县| 常熟市| 营山县| 开远市| 灵寿县| 自贡市| 南和县| 绥江县| 江西省| 成安县| 始兴县| 昭通市| 台南县| 镇原县| 田阳县| 米易县| 大名县| 临海市| 栖霞市| 西乌珠穆沁旗| 余庆县| 平南县| 长治市| 汤原县| 汉源县| 嘉鱼县| 通化市| 平定县| 融水| 定边县| 肥城市| 登封市| 鄂托克旗| 冀州市| 札达县| 琼结县| 思南县| 高邮市|