代碼覆蓋率檢查工具 -- Coverage,簡單使用


Coverage

  一個專門用來檢查代碼覆蓋率的工具,他的使用非常簡單,有兩種使用方法:[命令行運行,配合測試套件使用]

  安裝: pip install coverage

 

一、准備素材

main.py  

def get_status(score):
    if score >= 90:
        return '優秀'
    elif score >= 80:
        return '良好'
    elif score >= 60:
        return '及格'
    else:
        return '不合格'

 

test_get_status.py

import unittest
from main import get_status

class GetStatus(unittest.TestCase):

    def test1(self):
        self.assertAlmostEquals(get_status(90))

    def test2(self):
        self.assertAlmostEquals(get_status(70))


if __name__ == '__main__':
    unittest.main(verbosity=2)

 

二、使用 coverage 來檢查覆蓋率

2.1 命令行方式

在命令行中運行

# 1、搜集被測代碼覆蓋率信息,保存到 .coverage 文件中
coverage run test_get_level.py

# 2、生成覆蓋率統計結果報告
coverage html -d coverage_result

 

然后看看測試結果

*:statements :代碼總行數

*:missing:未執行代碼行數

*:coverage:代碼覆蓋率

 


 

 


 

 

 

 

2.2 配合測試套件使用

test_coverage.py

import coverage
import unittest

cov = coverage.coverage()
cov.start()

suite = unittest.defaultTestLoader.discover('./', 'test_get_status.py')
unittest.TextTestRunner().run(suite)

cov.stop()
cov.save()
cov.report()
cov.html_report(directory='res_html')

 

然后就是運行結果,結果和上圖是一樣的,就不發了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM