一、环境准备:
1、安装allure
2、安装allure-pytest:pip install allure-pytest
二、allure基本参数说明
三、实践代码
#conftest.py
import pytest
@pytest.fixture(scope="session")
def login_fixture():
"""需要先登录"""
print("前置条件")
yield
print("后置条件")
#steps.py
import allure
@allure.step("步骤1")
def step1():
pass
@allure.step("步骤2")
def step2():
pass
@allure.step("步骤3")
def step3():
pass
#test_demo.py
import pytest
import allure
from test_allure.step import step1, step2, step3
@allure.feature("用户管理模块")
class TestDemo():
@allure.story("测试用例标题")
@allure.issue("http://bug.html")
@allure.testcase("http://testcase.html")
def test_update(self):
"""测试更新接口"""
print("测试更新接口")
step1()
step2()
step3
@allure.story("测试用例标题1")
@allure.issue("http://bug1.html")
@allure.testcase("http://testcase1.html")
def test_del(self):
"""测试删除接口"""
print("测试删除接口")
step1()
step2()
step3
@allure.feature("商品管理模块")
class TestDemo1():
@allure.story("测试用例标题")
@allure.issue("http://bug.html")
@allure.testcase("http://testcase.html")
@allure.severity("blocker")
def test_update(self):
"""测试更新接口"""
print("测试更新接口")
step1()
step2()
step3
@allure.story("测试用例标题1")
@allure.issue("http://bug1.html")
@allure.testcase("http://testcase1.html")
@allure.severity("critical")
def test_del(self):
"""测试删除接口"""
print("测试删除接口")
step1()
step2()
step3
命令行执行pytest命令生成allure的测试报告
pytest --alluredir ./allure/report8
可以看到生成的是json、txt格式的数据
在命令行执行allure命令,启动一个web服务,将上一步生成的数据生成HTML进行可视化
allure serve ./allure/report8
最后,可以按照allure标记过滤执行部分测试用例:
比如:
pytest --alluredir ./allure/report7 --allure-features 用户管理模块,商品管理模块