在最新版本中仍然缺少对其pytest环境小部件的倾城支持(参见:https://github.com/allure-framework/allure-python/issues/96)
我想知道是否有人找到了这个缺失功能的解决方法?我注意到例如环境数据是从\ allure-report \ widgets \ environment.json中读取的
有没有人在直接写入环境文件或找到另一种解决方法方面取得了成功?
您可以使用简单的environment.properties
格式将环境变量写入名为key=value
的文件:
browser=chrome
evn=staging
并在使用命令行或CI插件生成报告之前将其放入path/to/allure-results/environment.properties
最后想出了如何将动态值传递给ENV小部件。毕竟它真的很容易。
对于使用Jenkins Allure插件的人:
我们在Windows机器上运行我们的工作(Windows Batch Command),将一些构建参数传递给python测试运行器。
然后在后期构建操作中调用倾城报告。结果路径是reports/$BUILD_TAG
$ BUILD_TAG是一个可用的环境变量(在Windows批处理命令下查找链接)
因此,要使用环境变量或构建参数填充报表,只需在运行测试后创建另一个Windows批处理命令,如下所示:
cd reports/%BUILD_TAG%
(
echo BUILD=%build%
echo ENVIRONMENT=%env%
)>environment.properties
这将使用您的构建信息动态创建environment.properties文件。
一旦你的工作进入Post-build Actions(即Allure报告),它将使用你的environment.properties生成你所有的原始json。 Waa Laa!
注意:此时已针对Windows进行配置。在获取作业的过程中,在Linux机器上生成报告。将“Windows Batch Command”更改为“Execute shell”并为Linux命令配置。应该是直截了当的。