pytest-allure详细描述报告04
一、Allure简介:
Allure是一款轻量级并且非常灵活的开源测试报告框架。 它支持绝大多数测试框架, 例如TestNG、Pytest、JUint等。它简单易用,易于集成。
下载:pip3 install allure-pytest -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
配置环境变量
allure如何生成测试报告
运行的时候加上:pytest.main ( ‘–alluredir’, ‘report/result’, ‘TestDemo01.py’])
会在当前文件夹创建一个report文件夹,在report文件夹下创建result
二、Allure用例描述:
使用方法 参数值 参数说明
@allure.epic() epic描述 定义项目、当有多个项目是使用。往下是feature
@allure.feature() 模块名称 用例按照模块区分,有多个模块时给每个起名字
@allure.story() 用例名称 一个用例的描述
@allure.title(用例的标题) 用例标题 一个用例标题
@allure.testcase() 测试用例的连接地址 自动化用例对应的功能用例存放系统的地址
@allure.issue() 缺陷地址 对应缺陷管理系统里边的缺陷地址
@allure.description() 用例描述 对测试用例的详细描述
@allure.step() 操作步骤 测试用例的操作步骤
@allure.severity() 用例等级 blocker 、critical 、normal 、minor 、trivial
@allure.link() 定义连接 用于定义一个需要在测试报告中展示的连接
@allure.attachment() 附件 添加测试报告附件
总共主要的就以上这些,常用的大概有一半吧 。
三、实际应用
新建目录
项目目录
1、登录接口正常登录
"""
__title__ = loging.py
__Time__ = 2022/4/1610:51
__Author__ = 小樱桃
__Blog__ = https://www.jianshu.com/u/71ff901eeee2
__公众号__ = 软件测试开发修炼
"""
import allure
@allure.step("操作步骤:登录")
def login():
"""登录操作"""
print("这个是登录的接口")
2、conftest配置login,保持登录态
"""
__title__ = conftest.py
__Time__ = 2022/4/1610:41
__Author__ = 小樱桃
__Blog__ = https://www.jianshu.com/u/71ff901eeee2
"""
import pytest
from common_contion.loging import login
@pytest.fixture(scope="session")
def login_fixture():
login()
print("这个是前置操作:登录")
3、编写测试用例,第一个用例,第二个用例,第三个用例相关接口,一个用例可对应多个步骤
"""
__title__ = test_case.py
__Time__ = 2022/4/1610:51
__Author__ = 小樱桃
__Blog__ = https://www.jianshu.com/u/71ff901eeee2
"""
import allure
def jieko_demo1():
print("第一个用例的接口")
def jieko_demo2():
print("第二个用例的接口")
@allure.feature("登录模块")
class jieko_demo3(object):
"""这个模块的测试"""
@allure.step("操作步骤:进入首页")
def jieko_demo3_1(self):
print("thrid case api1")
@allure.step("操作步骤:新增部门")
def jieko_demo3_2(self):
print("thrid case api2")
@allure.step("操作步骤:审核部门")
def jieko_demo3_3(self):
print("thrid case api3")
4、调用接口,生成测试报告
"""
__title__ = dome_Interface.py
__Time__ = 2022/4/1610:56
__Author__ = 小樱桃
__Blog__ = https://www.jianshu.com/u/71ff901eeee2
__公众号__ = 软件测试开发修炼
"""
import pytest
import allure
from common_contion.dome_Interface import *
@allure.severity("blocker")
@allure.epic("项目名称:公务云系统")
@allure.issue("https://www.jianshu.com/u/71ff901eeee2")
@allure.testcase("https://www.jianshu.com/u/71ff901eeee2")
@allure.feature("登录")
class Testdome(object):
def test_demo1(self,login_fixture):
"""用例描述:第一个用例,一个步骤"""
print("first case")
jieko_demo1()
def test_demo2(self,login_fixture):
"""用例描述:第二个用例,一个步骤"""
print("second case")
jieko_demo2()
@allure.severity("blocker")
@allure.epic("项目名称:公务云系统")
@allure.issue("https://www.jianshu.com/u/71ff901eeee2")
@allure.testcase("https://www.jianshu.com/u/71ff901eeee2")
@allure.feature("对部门进行增加,审批")
class Testdome2(object):
def test_demo2(self,login_fixture):
"""用例三的描述:第三个用例,有多步骤"""
print("thrid case")
f = jieko_demo3()
f.jieko_demo3_1()
f.jieko_demo3_2()
f.jieko_demo3_3()
四、准备相关环境
第一步:下载allure
打开Pycharm,点击File,点击Settings,选择project interpreter,点击右上角+加号按钮,搜索并选择pytest,点击install package;搜索allure,分别选择allure-python和allure-python-commons,点击install package
第二步,设置环境变量
把解压后的allure文件夹添加到环境变量PATH(\安装路径\allure-commandline\bin)。(提示没找到allure路径,往往是allure没添加到环境变量中)
第三步,确认allure安装成功,在命令行输入:allure --version,能展示allure安装版本2.12.1即可。如果报错,可能是因为电脑中没有安装jdk1.8造成的,这时安装一个jdk1.8就好了。
配置好环境变量后记得重启下ide
五、执行测试用例:
pytest --alluredir ./reopore/allure_row_1
allure serve report/allure_row_1