pytest+allure:关于allure框架的使用(一)

一、allure框架使用时的相关命令

1. 指定测试报告的存储路径

        1.1 相关命令:--alluredir=路径

         例:--alluredir=report/allure_report(给收集测试报告指定储存路径)

        1.2 完整命令:pytest [测试文件名.py] --alluredir=[测试报告储存的路径]

        例:pytest test_allure.py --alluredir=report/allure_report

2. 查看测试报告,两种方法

方法一:打开的报告直接在默认浏览器中查看

        命令:allure serve report/allure_report

方法二:从结果生成报告(index.html格式,方便随时打开),打开报告,共两步。

        步骤一:生成报告

        命令(使用generate):allure generate report/allure_report -o report/allure_report_1 --clean(注意:覆盖路径加--clean)

        步骤二:打开报告查看

        命令:allure open -h 127.0.0.1 -p 8883 report/allure_report_1

        说明:open相当打开一个tomcat服务,并用端口8883进行监听,监听端口不冲突时可以任意设置

3. 根据测试功能,按模块、类方法、函数、测试步骤,添加标记

3.1 划分:

        feature:用于功能模块的测试,例如:类前添加

        story:用于测试用例,例如:函数、类方法前添加

        step:用于测试步骤,例如:测试用例中的断言等等

        attach:用于测试用例添加附件,例如:前端自动化需要附加截图、html代码块、文本等

3.2 标记的具体用法:在对应的代码前添加

        代码:

         1)@allure.feature("功能模块名称")

        2)@allure.story("测试用例的名称")

        3.1)@allure.step("测试步骤的说明"):这种代码需放在类、方法、函数前

        3.2)with allure.step("测试步骤的说明"):

                        代码块:用例步骤

        4)allure.attach和allure.attach.file的用法,如下

allure.attach("这是一个纯文本", attachment_type=allure.attachment_type.TEXT)
allure.attach(
    "<body>这是一段htmlbody代码块</body>",
    "html代码块",
    attachment_type=allure.attachment_type.HTML
)
allure.attach.file(
    "/Users/test/bug严重程度统计.png",
    "这是一个png格式的图片",
    attachment_type=allure.attachment_type.PNG
)

3.3 执行测试用例时,可以选择相应的用例执行

        相关命令:--allure-features [功能模块名称,功能模块名称...]

                           --allure-stories [测试用例的名称,测试用例的名称...]

                           --allure-steps [测试步骤的说明,测试步骤的说明...]

        完整命令:pytest [测试文件名.py] --alluredir=[测试报告储存的路径] --allure-features [功能模块名称,功能模块名称...]

        或者:pytest [测试文件名.py] --alluredir=[测试报告储存的路径] --allure-stories [测试用例的名称,测试用例的名称...]

        或者:pytest [测试文件名.py] --alluredir=[测试报告储存的路径] --allure-steps [测试步骤的说明,测试步骤的说明...]

4. 根据测试用例执行级别,添加标记

4.1 级别分类:

        trivial:轻微缺陷(必填项无提示,或者提示不规范)

        minor:次要缺陷(界面错误,UI与需求不符)

        normal:一般缺陷(数值计算错误,边界情况,格式错误)

        critical:严重缺陷(功能点缺失)

        blocker:阻塞缺陷(客户端程序无响应,功能没有实现,无法执行下一步操作)

4.2 标记的具体用法:在相应的测试用例前添加

代码:@allure.severity(allure.severity_level.[TRIVIAL/MINOR/NORMAL/CRITICAL/BLOCKER]

也可:@allure.severity(severity_level="[normal/minor/normal/critical/blocker]")

4.3 执行测试用例时,可以选择不同级别的用例进行执行

相关命令:--allure-severities normal,minor,normal,critical,blocker

完整命令:pytest [测试文件名.py] --alluredir=[测试报告储存的路径] --allure-severities [级别]

5. 链接对应的测试用例管理地址或者bug管理地址

5.1 代码:

@allure.link(url="对应测试用例管理地址url", name="测试用例管理系统")

@allure.issue(url="对应bug编号的url", name="测试bug")

5.2 完整命令

完整命令:pytest [测试文件名.py] --alluredir=[测试报告储存的路径] --allure-link-pattern=issue:[ 如果代码中的issue没有给出完整url,此处需要追加上相关url,代码中给的部分url在此处使用{}格式 ]

例如:pytest allure_demo/test_allure_attach.py --alluredir=report/allure/attach_result --allure-link-pattern=issue:http://XXX{}XXX

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值