pytest+Allure生成测试报告

先看一下项目目录

在这里插入图片描述

关于allure安装参考该博客:allure安装

Allure介绍

  1. Environment(环境)
    在Allure报告中添加环境信息,通过创建environment.properties或者environment.xml文件,并把文件存放到allure-results目录下
    environment.properties
Browser=Chrome
Browser.Version=63.0
Stand=Production
python.Version=3.6

或者environment.xml

<environment>
    <parameter>
        <key>Browser</key>
        <value>Chrome</value>
    </parameter>
    <parameter>
        <key>Browser.Version</key>
        <value>63.0</value>
    </parameter>
    <parameter>
        <key>Stand</key>
        <value>Production</value>
    </parameter>
        <parameter>
        <key>ApiUrl</key>
        <value>127.0.0.1/login</value>
    </parameter>
        <parameter>
        <key>python.Version</key>
        <value>3.6</value>
    </parameter>
</environment>

运行run之后的效果
在这里插入图片描述

  1. Categories(分类目录)
    测试报告默认统计两种类型的测试用例结果,失败的用例和故障测试用例,我们可以自定义添加用例的统计类型,同样需要在allure-results目录下新建categories.json文件
[
  {
    "name": "Ignored tests", 
    "matchedStatuses": ["skipped"] 
  },
  {
    "name": "Infrastructure problems",
    "matchedStatuses": ["broken", "failed"],
    "messageRegex": ".*bye-bye.*" 
  },
  {
    "name": "Outdated tests",
    "matchedStatuses": ["broken"],
    "traceRegex": ".*FileNotFoundException.*" 
  },
  {
    "name": "Product defects",
    "matchedStatuses": ["failed"]
  },
  {
    "name": "Test defects",
    "matchedStatuses": ["broken"]
  }
]


name:(必填)类别名称
matchedStatuses:(可选)合适的测试状态列表。默认["failed", "broken", "passed", "skipped", "unknown"]
messageRegex:(可选)用于检查测试错误消息的正则表达式模式。默认".*"
traceRegex:(可选)正则表达式模式以检查堆栈跟踪。默认".*"

运行run之后的效果

  1. allure装饰器的介绍
使用方法参数值参数说明
@alllure.epic()epic描述项目描述,往下是feature
@allure.feature()模块名称功能点的描述,往下是story
@allure.story()用户故事用户故事,往下是title
@allure.title()用例的标题重命名HTML报告的名称
@allure.testcase()测试用例的链接地址对应测试用例系统里面的case
@allure.issue()缺陷对应缺陷管理系统里面的链接
@allure.description()用例描述测试用例的描述
@allure.step()操作步骤测试用例的步骤
@allure.severity()用例等级blocker、critical、normal、minor、trivial
@allure.link()链接定义一个链接,在测试报告展示
@allure.attachment()附件报告添加附件

在这里插入图片描述

  1. 命令释义
pytest.main(['-vs','./test_case','--alluredir','./temp'])
os.system("allure generate ./temp --clean allure-results -o report")


'--alluredir','./temp':生成json格式的临时报告
allure generate:固定的,使用generate命令导出HTML报告到新的目录
./temp:临时的json格式报告的路径
-0 :输出 output,指定生成报告的文件夹
/report:生成的 allure报告的路径
-clarn : 清空 report路径原来的报告

如果在pytest.ini文件中配置了alluredir ,命令中就可以不用写,如下

pytest.main(['-vs','./test_case',])
os.system("allure generate ./temp --clean allure-results -o report")

pytest.ini文件内容:

[pytest]
addopts = -vs --alluredir ./temp
testpaths = ./
python_files = test_*.py
python_classes = Test*
python_functions = test*

参考博客:https://www.cnblogs.com/linuxchao/p/linuxchao-pytest-allure.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值