按组排序的 unittest.TestCase 子类的执行者。
项目描述
测试用例执行器
执行已配置的测试用例组(unittest.TestCase的子类),在终端显示人类可读的结果,按组和测试用例排序,并生成 html 文件报告。
安装
$ pip install testcases_executor
这也安装了用于生成 html 报告的Jinja2 。
配置
在项目的根目录中创建一个名为testcases.py的文件。
在其中,导入您的TestCases并创建一个名为groups的列表(或元组),该列表由元组组成,每个元组代表一个group。例如:
from your_app.test_script import TCaseOne, TCaseTwo, TCaseThree, TCaseFour
groups = [ # or (
('Group one', 'one', [TCaseThree, TCaseTwo]), # or (TCaseThree, TCaseTwo)),
('Group two', 'two', [TCaseOne, TCaseFour]), # or (TCaseOne, TCaseFour)),
] # or )
约束
-
组必须是列表或元组。
-
组的项目(组的表示)必须是一个元组。
-
每个元组必须包含3 个项目:
- 组名必须是字符串。
- 用于运行所有组的测试用例字符串的参数名称,没有空格。
- unittest.TestCase子类必须是列表或元组。
-
组和参数名称,unittest.TestCase子类必须使用一次。
用法
$ python -m testcases_executor
这将运行所有测试,在生成之前在终端中显示结果,在根目录中,名为tc_executor_report.html的html 报告文件。可以使用以下可用参数自定义命令。
可用参数
-
选项
- -h, --help :显示帮助信息。
- -o, --open :测试后在浏览器中打开 html 报告。
-
测试选择
- -group_argument_name:运行所有组的测试用例的测试。
- -TestCaseName:(不带参数)运行所有测试用例的测试。
- -TestCaseName:(在参数中带有测试名称)运行所需的测试。
一些例子:
$ python -m testcases_executor -two
$ python -m testcases_executor -one -TCaseFour -o
$ python -m testcases_executor -TCaseTwo test_one -TCaseOne test_three
...
结果截图
终端
网页报告
它使用Bootstrap4、jQuery和Fontawesome 图标(通过stackpath cdn)。
单击表的行以查看测试的信息。
测试
出于同样的原因,与未来的自己相遇会导致空间时间冲击,使用同一测试器测试测试器会导致空间测试冲击。所以最重要的是,不要。使用unittest
运行testcases_executor.tests:
$ python -m unittest testcases_executor.tests -v
:+1: HtmlTestRunner给了我很大的启发,所以谢谢你。