gpt4 book ai didi

unittest+coverage单元测试代码覆盖操作实例详解

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 26 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章unittest+coverage单元测试代码覆盖操作实例详解由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

基于上一篇文章,这篇文章是关于使用coverage来实现代码覆盖的操作实例,源代码在上一篇已经给出相应链接.

本篇文章字用来实现代码覆盖的源代码,整个项目的测试框架如下:

unittest+coverage单元测试代码覆盖操作实例详解

就是在源代码的基础上加了一个CodeCover.py文件,执行该文件会在目录CoverageReport生成相应的覆盖报告。如下是CodeCover.py的源码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#coding=utf8
import os
import time
 
def findTestWithPath():
   current_dir = os.getcwd()
   folderName = os.listdir(current_dir)
   #print folderName
   #获取到测试文件所在目录
   TestSuit = [suite for suite in folderName if  not suite.find( "TestSuit" )]
   #用来保存测试文件
   testfile = []
   withPathFile = []
   for suite in TestSuit:
       #获取测试目录下的所有测试文件
       testfile = testfile + os.listdir( ".\\" + suite)
       for withPath in testfile:
         withPath = current_dir + "\\"+suite+" \\" + withPath
         withPathFile.append(withPath)
   del testfile
   #把testfile中的py文件挑选出来
   withPathFile = [name for name in withPathFile if not "pyc" in name]
   #print testfile
   print withPathFile
   return withPathFile
 
def codeCoverage():
   now = time.strftime( "%Y%m%d%H%M"
   htmlReport = os.getcwd() + "\\"+" CoverageReport"
   htmlCmd = "coverage html -d " + htmlReport + "\\" + now
   for pyfile in findTestWithPath(): 
     runPyCmd = "coverage run " + pyfile
     if os.path.exists(htmlReport) :      
       os.system(runPyCmd)
       os.system(htmlCmd)
     else :
       os.mkdir(htmlReport)
       os.system(runPyCmd)
       os.system(htmlCmd)
       
 
if __name__ = = "__main__" :
   codeCoverage()

运行结果图:

unittest+coverage单元测试代码覆盖操作实例详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我.

原文链接:https://blog.csdn.net/henni_719/article/details/59056763 。

最后此篇关于unittest+coverage单元测试代码覆盖操作实例详解的文章就讲到这里了,如果你想了解更多关于unittest+coverage单元测试代码覆盖操作实例详解的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com