前面讲到使用pytest执行单个、多个或指定的测试用例。接下来讲解下通过运行测试用例,怎么来生成不同格式的测试报告
首先,创建test_calss.py 测试用例文件,这里以测试该文件为例
#coding:utf-8
class TestClass():
def test_one(self):
x = "this"
assert "h" in x
def test_two(self):
x = "hello"
assert x == "hi"
def test_three(self):
x = "world"
assert x != "worl"
一、生成ResultLog文件
1.在CMD中切换到该测试用例路径下,执行指令:py.test test_class.py --resultlog=./log.txt (其中./log.txt为生成log的路径,也可写成py.test test_class.py --resultlog=E:/log.txt)。并早当前路径下生成log.txt文件,打开文件,内容如下
![img_93451107b14bd1e697f18ab84aeb2b16.png](https://i-blog.csdnimg.cn/blog_migrate/5952a35c1acbba26284e9be0ea116683.png)
二、生成JunitXML文件
1.在CMD中切换到该测试用例路径下,执行指令:py.test test_class.py --junitxml=./log.xml (其中./log.xml为生成log的路径,也可写成py.test test_class.py --junitxml=E:/log.xml)。并在当前路径下生成log.xml文件,打开文件,内容如下
![img_1d1fb65ce5f2bc0fbba78c951a0569f0.png](https://i-blog.csdnimg.cn/blog_migrate/506648b697a3e34e99be1a45ac65939d.png)
三、创建测试用例的URL
1.在CMD中切换到该测试用例路径下,执行指令:py.test test_class.py --pastehbin=all 会在最后一行生成一个网址
![img_24e04cddb7133cb265850b196b05a71c.png](https://i-blog.csdnimg.cn/blog_migrate/de13ffac93a6c784dc3c000f09c3c73e.png)
2.把网址(https://bpaste.net/show/5e60a2096e54)复制到浏览器打开可以看到测试用例执行的全部结果
![img_9b70b9e3122cc5e1df3edba2438f2bfa.png](https://i-blog.csdnimg.cn/blog_migrate/4a2fc20253f83bd01b3d56205a85f126.png)
3.指定显示测试结果为FAIL,输入指令:py.test test_class.py --pastebin=failed
![img_3a40f028622b574a9b087c9b6544c058.png](https://i-blog.csdnimg.cn/blog_migrate/1b66c698b38be22297c69f119e38fb2b.png)
四、生成HTML测试报告
1.要想生成html格式的测试报告,首先的下载安装pytest-html插件,执行如下指令:pip install pytest-html 如下图
![img_78bf66f152fd41f730fe000eedcb917a.png](https://i-blog.csdnimg.cn/blog_migrate/d28c7308bfa691898c0f6287ae8480c0.png)
2.在CMD中切换到该测试用例路径下,执行指令:py.test test_class.py --html=./report.html (其中./report.html为生成log的路径,也可写成py.test test_class.py --html=E:/report.html)。并在当前路径下生成report.html文件,打开文件,内容如下
![img_63a0c0f21810b96135c5dbba35e76bdb.png](https://i-blog.csdnimg.cn/blog_migrate/40579a358ecdeb34a4baaff5212c11f9.png)
3.双击打开生成的report.html文档,可以看到如下效果
![img_fe782ce1341ab861834e56747896316d.png](https://i-blog.csdnimg.cn/blog_migrate/fb7db6c5cdc6eae0fdf1f0d0a7582cbf.png)
其中,红色框框内的选项可以自行选择是否显示。