目录
前言:
今天分享的内容:在Pycharm+pytest基础上使用allure打造高逼格的测试报告。
环境前置提示:allure是基于Java的一个程序,需要Java1.8的环境,没有安装需要去安装一下。
如果在cmd中能输入java,获取到命令信息则不管,否则需要配置系统变量:
路径:计算机>属性>高级>环境变量
在系统变量添加
JAVA_HOME D:\Software\JDK8(改为自己的实际路径)
在Path中追加(没有则新建)
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
1、安装allure
alluer官网地址:http://allure.qatools.ru/
当前最新版本(allure-commandline-2.13.1.zip)下载地址:
https://github.com/allure-framework/allure2/releases/tag/2.13.1
下载解压后,把解压目录放到自定义存放路径,然后在系统变量(参见上面java设置)Path中追加:
~\放置目录\allure-commandline-2.13.1\allure-2.13.1\bin;
点击确定,保存。此时可以通过cmd使用allure命令,则安装配置正确。
2、安装allure-pytest
pip install allure-pytest
注意:如果环境装有多个python版本,需切换到pycharm当前使用的python下面进行安装。
使用命令 pip list 确认插件是否安装成功
最终环境清单:
- windows7 x64
- python3.7
- pycharm-professional-2019.3.1
- pytest 5.3.2
- allure-pytest 2.8.6
- allure-commandline-2.13.1
- java1.8
3、一个简单的用例test_simpe.py
import pytest
import allure
@allure.feature("测试Dome")
class TestClass:
@allure.story("测试用例 1")
def test_one(self):
x = "hello"
assert 'h' in x
@allure.story("测试用例 2")
def test_two(self):
x = "test"
assert hasattr(x, 'check')
PS:具体用例编写,allure的用法请持续关注后续文章,小酋将详细介绍。
4、在pycharm底部打开terminal
其中输入命令生成结果,命令格式:
pytest <测试目录> --alluredir <测试结果存放目录>
比如,我的文件夹目录如下
所以命令为:
pytest testcase --alluredir report/allure_raw
allure收集pytest运行后产出的结果放在 reportallure_raw 文件夹中
注意:这里的 allure_raw 文件夹只存放的是测试运行结果,还不是报告!报告还需要调用 allure 命令去生成。
当前结果是像这样的:
5、用allure美化报告
allure generate -o <运行结果的目录> <存放报告的目录> --clean
这里命令如下:
allure generate report/allure_raw -o report/allure_report --clean
通过上面的命令运行后,就会从 allure_raw 目录中将 pytest 运行的结果生成一个漂亮的报告,存放在 allure_report 中。
6、查看报告
在 pycharm 中可以选择index.html通过右键[ Open in Browser]就可以看到报告了
这里选择chrome浏览器打开,展示效果如下
注意:这里直接找到存放结果allure_report下的index.html打开,是看不到报告数据的
至此,漂亮报告是不是让人赏心悦目,陡然感觉高尚上起来了。
问题1:如果你不是用 Pycharm 的话,可以通过 allure 命令生成服务查看
allure open 报告路径
如:allure open D:\PYTEST eport\allure_report
将自动使用当前默认浏览器展示报告
问题2:过程中如果遇到AttributeError: module 'allure' has no attribute 'severity_level'问题
pip uninstall pytest-allure-adaptor
pip install allure-pytest
因为pytest-allure-adaptor和allure-pytest不能同时使用,需要卸载掉pytest-allure-adaptor。
总结:
感谢每一个认真阅读我文章的人!!!
我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方名片免费领取,千万不要错过哦。