No project description provided
Project description
UniTesTReport
-
unittest 生成测试报告
-
unittest测试用例多线程执行
-
安装命令 pip install unittestreport
一、使用说明
本模块专门为unittest执行测试用例生成测试报告而开发,支持多线程执行unittest的测试用例
-
关于测试报告
- 本模块可以生成2个风格的测试报告(ps:一种自己编写的,另一种风格由的BeautifulReport的报告模板稍加修改而来)
- 另外为了方便大家使用,本模块还集成了HTMLTestRunnerNew这个生成报告的模块
- 报告截图
-
关于多线程执行
-
因为考虑到测试用例执行的顺序问题,本模块提供了两个多线程执行用例的方法TestRunner.run以及TestRunner.run_case。
-
TestRunner.run:以用例类为单位开启线程执行,可以保证测试类的用例执行顺序。
-
TestRunner.run_case方法:以用例为单位开启线程执行,用例执行的先后顺序得不到保证,同一个测试类多个用例可以同时执行
-
注意点:本模块提供了多线程执行测试用例的方法,由于多线程是共享全局变量的,测试用例之间的共享全局变量,在使用多线程执行用例的的时候会因为资源竞争而影响全局变量的安全性。大家再使用多线程执行测试用例的时候,注意尽量不要多个测试用例类,使用同一个全局变量来保存数据。
-
-
关于TestRunner类初始化,以及允许方法的参数说明
class TestRunner(): """unittest运行程序""" def __init__(self, suite: unittest.TestSuite, filename="report.html", report_dir=".", title='测试报告', tester='木森', desc="木森执行测试生产的报告", templates=1 ): """ 初始化用例运行程序 :param suites: 测试套件 :param filename: 报告文件名 :param report_dir:报告文件的路径 :param title:测试套件标题 :param templates: 可以通过参数值1或者2,指定报告的样式模板,目前只有两个模板 :param tester:测试者名字 """ def run(self, thread_count=1): """ 以用例类为单位开启多线程运行,可以保证用例类中的用例执行的顺序问题 :param thread_count:线程数量,默认1 :return: """ def run_case(self, thread_count=1): """ 以测试用例为单位开启多线程运行,不能保证用例执行的顺序问题 :param thread_count:线程数量,默认位1 :return: """
二、使用案例
import unittest
from unittestreport import TestRunner
# 加载测试套件
suite1 = unittest.defaultTestLoader.discover(r"C:\project\musen\case_test")
# 创建运行对象
runner = TestRunner(suite1,
title='木森的测试报告',
filename="musen02",
templates=1)
# 开启2个线程执行测试
runner.run(thread_count=2)
备注:
-
开发者:柠檬班—木森
-
开发时间:2020-07-16
-
E-mail:musen_nmb@qq.com
-
github地址:https://github.com/musen123/UnitTestReport
-
本模块目前是第一个版本,后续还会优化改进,欢迎各位大佬提建议!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
unittestreport-1.0.4.tar.gz
(46.7 kB
view hashes)
Built Distribution
Close
Hashes for unittestreport-1.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5f1f1805d4c94a48ab6957ce646141682f4dd24f9f1559375fb0d3d496c9a2a |
|
MD5 | 38232f68d23b54474b8d81266c4145dd |
|
BLAKE2b-256 | 10fcdbc7c67dc7be23d03fbb4425edb85bcaee847b9e7b6558f501708e348f56 |