pytest+allure生成测试报告

一、allure的简介

Allure是一款轻量级并且非常灵活的开源测试报告框架。 它支持绝大多数测试框架, 例如TestNG、Pytest、JUint等。它简单易用,易于集成。本文只做和pytest集成的使用

二、allure的安装

首先需要在本地配置好Java环境,allure是基于Java的

1)如果是Mac电脑,就使用命令:brew install allure

2)本地如果安装了npm,可以使用命令:npm install -g allure-commandline --save-dev

3)下载allure-commandline.tar安装包,官网:https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/2.13.2/。解压后将bin目录配置到PATH路径.

三、allure与pytest集成

pip install allure-pytest  或pip3 install allure-pytest

关于allure-pytest,官方文档:https://docs.qameta.io/allure/#_pytest

四、报告生成

1)在测试用例文件中的使用

@allure.feature # 用于描述被测试产品需求,一般会放在测试用例类名上方

@allure.story # 用于描述feature的用户场景,即测试需求,放在测试用例方法前

with allure.step # 用于描述测试步骤,将会输出到报告中  ,放在测试用例中

allure.attach # 用于向测试报告中输入一些附加的信息,通常是一些测试数据,截图等,放在测试用例或公共方法中调用

@allure.step # 用于将一些通用的函数作为测试步骤输出到报告,调用此函数的地方会向报告中输出步骤,放在一个函数上方,将该函数作为一个步骤呈现。如登录函数

2) pytest执行

pytest  -s --alluredir result --disable-pytest-warnings  #指定了allure使用的文件所在目录:当前目录下的result文件

3)生成最终的HTML报告

allure generate result/ -o /data0/sites/pytest_report/   --clean

将result文件下的json等文件 生成可访问的html到  /data0/sites/pytest_report/ 

--clean的意思是先清空测试报告目录,再生成新的测试报告。

参考:https://blog.csdn.net/liuchunming033/article/details/79624474

五、allure-pytest可以进行进行分测试用例优先级

1)在测试用例函数上方:@allure.severity("blocker")

 blocker  阻塞缺陷(功能未实现,无法下一步)

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

 normal 一般缺陷(边界情况,格式错误)

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

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

2)在运行测试用例的时候可以指定运行哪个优先级的

pytest  -s --alluredir result --disable-pytest-warnings --allure-severities blocker,critical

你可能感兴趣的:(pytest+allure生成测试报告)