Python单元测试框架:pytest常用测试报告类型

发布时间:2024年01月16日

🍅 视频学习:文末有免费的配套视频可观看

🍅?关注公众号【互联网杂货铺】,回复 1?,免费获取软件测试全套资料,资料在手,涨薪更快

先前博客有介绍pytest测试框架的安装及使用,现在来聊聊pytest可以生成哪些测试报告

1. allure测试报告

2. 生成resultlog文件

#!/usr/bin/python# -*- coding: UTF-8 -*-"""@author:chenshifeng@file:test_report.py@time:2021/01/27"""class TestReport:     def test_one(self):        x = "shifeng"        assert "feng" in x     def test_two(self):        x = "hello"        assert x == "hi"

执行命令:

?pytest test_report.py ?--resultlog=./resultlog.txt

指定当前路径下生成resultlog.txt文件,打开文件,内容如下:

. reportdemo/test_report.py::TestReport::test_oneF reportdemo/test_report.py::TestReport::test_two self = <test_report.TestReport object at 0x7fd9c0a3eac0>      def test_two(self):         x = "hello" >       assert x == "hi" E       AssertionError: assert 'hello' == 'hi' E         - hi E         + hello  test_report.py:16: AssertionError

3. 生成JunitXML文件

执行命令:

pytest test_report.py  --junitxml=./resultlog.xml

同样指定在当前目录下生成resultlog.xml文件,打开文件内容如下:

<?xml version="1.0" encoding="utf-8"?><testsuites>    <testsuite errors="0" failures="1" hostname="chenshifengdeMacBook-Pro.local" name="pytest" skipped="0" tests="2"               time="0.072" timestamp="2021-01-27T23:56:58.204464">        <testcase classname="reportdemo.test_report.TestReport" file="reportdemo/test_report.py" line="9"                  name="test_one" time="0.001"></testcase>        <testcase classname="reportdemo.test_report.TestReport" file="reportdemo/test_report.py" line="13"                  name="test_two" time="0.002">            <failure message="AssertionError: assert &apos;hello&apos; == &apos;hi&apos;  - hi  + hello">self = &lt;test_report.TestReport object at 0x7fa152b97790&gt;                 def test_two(self):                x = &quot;hello&quot;                &gt; assert x == &quot;hi&quot;                E AssertionError: assert &apos;hello&apos; == &apos;hi&apos;                E - hi                E + hello                 test_report.py:16: AssertionError            </failure>        </testcase>    </testsuite></testsuites>

创建这样的XML文件有有什么用? 主要是为了方便Jenkin或其它的持续集成工具读取。

4. 生成测试用例的URL

执行命令:

pytest test_report.py ?--pastebin=all

复制打印结果最后生成的session-log测试报告链接到浏览器:

当然,你也可以只选择展示faile的测试用例

?pytest test_class.py ?--pastebin=failed

5. 生成html测试报告

通过pip安装pytest-html

?pip install pytest-html ?

在代码文件的当前目录下执行命令

pytest test_report.py --html=./report.html

指定在当前目录下生成report.html文件,打开测试文件:

最后祝大家都能找到心仪的工作,快乐工作,幸福生活,广阔天地,大有作为。我也整理了一波之前发布的软件测试文档【点击文末小卡片免费领取】,无套路领取!

同时,在这我为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看,也可以直接【点击文末小卡片免费领取资料文档】

软件测试视频教程观看处:

【2024最新版】Python自动化测试15天从入门到精通,10个项目实战,允许白嫖。。。

文章来源:https://blog.csdn.net/HUA6911/article/details/135630166
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。