学习说明
这篇博客主要是为了学习pytest和allure的使用,通过allure可以生成非常漂亮的测试报告。
使用须知
安装:pip install allure-pytest
下载zip包:https://github.com/allure-framework/allure2/releases/tag/2.13.1(下载之后解压缩,点击allure.bat并添加path路径)
官方文档:https://docs.qameta.io/
allure用例描述
使用方法 | 参数值 | 参数说明 |
---|---|---|
@allure.epic() | epic描述 | 敏捷里面的概念 |
@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() | 附件 | 报告添加附件 |
allure运行
import allure
import pytest
@pytest.fixture(scope="session")
def login():
print("请先登录")
@allure.step("步骤1:点击")
def step1():
print("step1")
@allure.step("步骤2:上传")
def step2():
print("step2")
@allure.feature("编辑页面")
class TestEditPage():
# 编辑页面
@allure.story("这是一个xxx的用例")
def test_1(self, login):
# 用例描述:先登录,再去执行xxx
step1()
step2()
print("xxx")
@allure.story("打开a页面")
def test_2(self, login):
# 用例描述:先登录,再去执行yyy
print("yyy")
if __name__ == '__main__':
pytest.main(["--alluredir", "./reports", "test_06.py"])
在终端程序目录下执行以下语句即可在当前目录下生成一个reports的文件,下面就是我们需要的测试报告
pytest --alluredir ./reports testcases/pytest/test_06.py
运行结果
生成报告之后我们可以通过
allure serve ./reports在终端运行,可自动弹出一个allure报告结果。