文章 > Python基础教程 > python HTML测试报告的用法

python HTML测试报告的用法

Python html

头像

小妮浅浅

2021-09-22 09:50:532710浏览 · 0收藏 · 0评论

说明

1、文件复制到项目目录。

2、模块导入代码。

from HTMLTestRunner import HTMLTestRunner

3、调用HTMLTestRunner。

(stream=file,标题=我的第一份html测试报告)

4、open打开文件。

打开的文件扩展名必须是.html。

5、打开文件时使用wb。

无需指定字符集。

6、执行测试套件,关闭open文件。

调用runner对象的run方法。

实例

import unittest
from HTMLTestRunner import HTMLTestRunner
# 用TestLoader对象的discover方法来自动查找py,自动加载py文件中的方法
# 第一个参数是从哪里找py文件,"."从当前目录开始查找py文件
# 第二个参数是指定py文件的文件名,可以用通配符
suite = unittest.TestLoader().discover(".", "my*.py")
# runner = unittest.TextTestRunner()
file = open("test01.html", "wb")  # 用wb代表用二进制写方式打开文件
# runner = unittest.TextTestRunner(stream=file, verbosity=2)
runner = HTMLTestRunner(stream=file, title="我的第一个html测试报告")
runner.run(suite)
file.close()
 
# demo08模块(demo08.py文件)
import unittest
from parameterized import parameterized
 
def digital(str1):
    sum = 0
    for n in str1:
        if n >= '0' and n <= '9':
            sum += 1
    return sum
 
 
# s = digital('sdsd565olkl4')
# print(type(s))
 
# 以参数str1的值分别为”hello 123”和”1a3b”, “你好”
# 写测试用例, 测试函数digital是否正确
# 以参数str1的值分别为”hello 123”和”1a3b”, “你好”
# 写测试用例, 测试函数digital是否正确
 
class testStr(unittest.TestCase):
    @parameterized.expand([('hello 123', 3), ('1a3b', 2), ('你好', 1)])
    def test_01(self, a, b):
        result = digital(a)
        self.assertEqual(result, b)
 
**********************************************************************************************************
 
# demo09模块(demo09.py文件)
# 调用demo08.py中的方法,生成一个测试报告!!!
import unittest
import homework.demo08
from HTMLTestRunner import HTMLTestRunner
 
def start():
    suits = unittest.TestLoader().discover(r'.', 'demo08.py')
    file = open('test_report04.html', 'wb')
    runner = HTMLTestRunner(stream=file, verbosity=2, title='第一个测试报告的生成', description='关于字符串中的是否有数字的判断')
    runner.run(suits)
    file.close()
 
start()

以上就是python HTML测试报告的用法,希望对大家有所帮助。更多Python学习指路:python基础教程

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!