allure简介
测试报告在项目中至关重要,测试人员可以在测试报告中体现自己的工作量,开发人员可以从测试报告中了解缺陷的情况,测试经理可以从测试报告中看到测试人员的执行情况及测试用例的覆盖率,项目负责人可以通过测试报告查看整个项目还余留多少问题。强大的测试报告能够非常清晰的反应很多问题,提供给相关人员了解项目的整体情况。
allure 是一种灵活的、轻量级、支持多种语言测试报告框架,它不仅能够以简洁的 web 报告形式显示已测试的内容,而且允许参与开发的每个人,从测试的日常执行中提取最大限度的有用信息。同时支持多种语言: Java、Python、JavaScript、Ruby、Groovy、PHP、.Net、Scala 。可以集成到Jenkins。
相比于pytest-html来说,Allure的报告真的是十全十美,测试报告更直观、简洁,数据更清晰。
allure 安装
下载 allure zip包
方法1:
下载地址:https://repo1.maven.org/maven2/io/qameta/allure/allure-commandline/2.13.7/
- 下载zip包
- 配置bin/目录到环境变量
- 验证是否下载成功:allure --version
方法2:
brew install allure
安装allure-pytest 插件
方法1
pip3 install allure-pytest -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
方法二
快速入门
allure报告概览
https://demo.qameta.io/allure/#
图1:
图2:
图3:
图4:
allure 运行
allure 文档:https://docs.qameta.io/allure/#
- 在测试执行期间收集结果
- pytest [测试文件] --alluredir=./result/(--alluredir这个选项 用于指定存储测试结果的路径)
- 查看测试报告
- 方式一:测试完成后查看实际报告,在线查看报告,会直接打开默认浏览器展示当前报告
- allure serve ./result/(注意这里的serve书写)
- 方法二:从结果生成报告,这是一个启动Tomcat的服务,需要两个步骤:生成报告,打开报告
- 生成报告:
- allure generate ./result -o /report/ --clean (注意:覆盖路径加--clean)
- 打开报告
- allure open -h 127.0.0.1 -p 8883 ./report/
- 生成报告:
- 方式一:测试完成后查看实际报告,在线查看报告,会直接打开默认浏览器展示当前报告
官网示例:
import pytest
def test_success():
"""this test succeeds"""
assert True
def test_failure():
"""this test fails"""
assert False
def test_skip():
"""this test is skipped"""
pytest.skip('for a reason!')
def test_broken():
raise Exception('oops')
执行命令1: pytest test_allure.py --alluredir=./result/1
执行结果1:
执行命令2:allure serve ./result/1
执行结果2:
allure报告结构
- 总览:汇总结果展示
- 类别:按照用例的类别,分类展示
- 测试套件:allure测试报告将每一个测试脚本,作为测试套件
- 图表:展示了此次测试结果的统计信息,比如测试用例执行结果状态、测试用例重要等级分布、测试用例执行时间分布等
- 功能:按照fixtures 和 stories 展示测试用例的执行结果
- 包:这就是按照package、module来分组测试用例了
- 测试用例详情页:测试套件页面点击任意一条测试用例,右侧展示详细信息。可以看到测试步骤,每个步骤的执行结果,还有测试用例的链接、图片、视频等内容。