Python用HTMLTestRunner生成html测试报告

枫铃3年前 (2021-07-10)Python251

一、引入HTMLTestRunner包

1、下载HTMLTestRunner.py,已上传到网盘,点击下载

2、将HTMLTestRunner.py复制到python安装目录的Lib文件夹下。

可能有的人不知道python安装地址的Lib文件夹在哪里。小编用的是mac,放的地址为:/资源库/Frameworks/Python.framework/Versions/3.6/lib/python3.6

因为看见里面有很多.py结尾的文件,常用到的os.py都在里面,放这里准没错。

二、用unittest写测试用例

具体可参考https://docs.python.org/2/library/unittest.html

三、main方法中生成测试报告

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import unittest
import HTMLTestRunnerNew
import time
import os
 
class make(unittest.TestCase):
 
    def __init__(self, methodName='runTest'):
        super().__init__(methodName)
        print("构造函数")
 
    def test_aaa(self):
        print("aaa")
        self.assertEqual(1, 2)
 
    def test_bbb(self):
        print("bbb")
        self.assertEqual(2, 2)
 
    def test_ccc(self):
        print("ccc")
        self.assertEqual(3, 2)
 
if __name__ == '__main__':
    print("main-start")
    s = unittest.TestSuite()  # 实例化
    s.addTests(unittest.TestLoader().loadTestsFromTestCase(make))  # 加载用例
    now = time.strftime('%Y-%m-%d %H%M%S')
    print("main-getcwd")
    filename = open(os.getcwd() + '/testResult_report' + now + '.html', 'wb')
    runner = HTMLTestRunnerNew.HTMLTestRunner(
        stream=filename,
        title='单元测试报告',
        description='单元测试报告',
        tester='youreyebows')
    runner.run(s)
    print("main-stop")

四、执行main方法

注意执行时一定不要右键 Run “Unittests in xxx” 因为这个执行的是上面写的继承自unittest的类,例如我这里就是make。

可以试试哦,控制台不会打印出main方法里的print后的语句。

五、查看html报告

(1)在项目下可以看见生成的测试报告,后缀为.html
在这里插入图片描述
(2)在chrome打开如图:
在这里插入图片描述

相关文章

Django基础知识MTV

Django基础知识MTV

Django简介 Django是使用Python编写的一个开源Web框架。可以用它来快速搭建一个高性能的网站。 Django也是一个MVC框架。但是在Dj...

Python 字符串操作和函数

字符串的相关操作 1....

Python 为什么要保留显式的 self ?

布鲁斯·埃克尔(Bruce Eckel)发了篇博文[1],提议从类方法的形参列表中删除“self”。我将解释为什么这...

python装饰器的使用场景

1、必备 #### 第一波 #### def foo(): print 'foo' foo #表示是函数 foo()...

python 输出所有大小写字母, range()以及列表切片

所以在写的时候,只要把它们的ASCII列出,并转化成字符型chr 即可。 print [chr(i) for i in rang...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。