allure介绍:Allure是开源的免费的多平台自动化测试报告生成工具,支持Java,Python。可以集成到Jenkins。
Allure仅用于根据现有数据源生成报告,
allure界面展示:
一、安装JDK
Allure是基于java开发的,因此需要JDK运行环境。安装过可跳过此步骤,没安装可看下面JDK安装配置教程
二、Allure下载、安装
1.下载
下载地址(推荐): https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/
Github地址:https://github.com/allure-framework/allure2/releases
根据需要的版本和平台来选择包:windows 下载.zip包
2.安装
放到想到的目录,直接解压就OK了。记住存放的目录
3.配置环境变量
把安装目录的bin路径加入环境变量后。cmd中输入allure后,出现下面就样就安装完成啦!
三、Allure命令介绍
命令格式:allure [options] [command] [command options]
Options:
--help 命令行帮助文档
-q 静默执行(不显示执行)
-v 可视化执行
--version 查看版本信息
Command:generate、serve、open、plugin。下面介绍各种命令的详细参数使用。
1.generate
作用:根据原始数据(xml/json/text/attach)等文件,仅生成 allure 的html 报告。
运行语法:allure generate [options] 数据源目录
选项 | 描述 |
---|---|
在生成新报告之前,清除旧的报告 | |
–config | allure命令行配置路径,如果指定会覆盖–profile和–configDirectory |
–configDirectory | allure命令行配置目录 |
–profile | allure命令行配置文件 |
生成allure报告的目录 默认: allure-report(没有则自动创建此目录) |
2.open
作用:配合generate使用,仅打开generate生成的报告
运行语法:allure open [options] allure报告目录
选项 | 描述 |
---|---|
-h, –host | 此主机将用于启动报表的web服务器。 |
-p, –port | 此端口将用于启动报表的web服务器。 |
3.serve
作用:根据原始数据,直接在浏览器构建allure报告,不生成报告。
运行语法:allure serve [options] 数据源目录
选项 | 描述 |
---|---|
–config | allure命令行配置路径,如果指定会覆盖–profile和–configDirectory |
–configDirectory | allure命令行配置目录 |
–profile | allure命令行配置文件 |
-h, –host | 此主机将用于启动报表的web服务器。 |
-p, –port | 此端口将用于启动报表的web服务器。 |
从这里参数选项中,我们也能够看出来,serve做了generate和open的一些事情。这个我们下面会讲到
4.plugin
作用:也是用来生成报告,但是不怎么使用,可能是在jenkins中作为插件时的命令吧。了解即可!
选项 | 描述 |
---|---|
–config | allure命令行配置路径,如果指定会覆盖–profile和–configDirectory |
–configDirectory | allure命令行配置目录 |
–profile | allure命令行配置文件 |
四、浏览器打开 allure 报告的两种方式
1.allure serve
# 执行 pytest,指定 allure 生成报告的数据源目录
pytest -sq --alluredir=./allure
# 打开 allure 报告
allure serve ./allure
2.allure generate + allure open
# 执行 pytest,指定 allure 生成报告的数据源目录
pytest -sq --alluredir=./allure
# 生成 allure 的 html 报告
allure generate -c -o ./allure-report ./allure
# 打开 allure 报告
allure open ./allure-report
两种方式的区别:
相信看了上面Allure命令介绍的朋友,已经知道两者的差别了,这里还是总结一下。
serve是直接根据数据源来构建一个报告,直接在浏览器打开,本地并不生成allure报告。
generate+open则是,首先generate根据数据源在本地生成allure报告,再由open在浏览器中打开。