自动化工具 allure 报告整合方案请教

满级质量守卫 · 2020年11月06日 · 最后由 孙高飞 回复于 2020年11月09日 · 4712 次阅读

allure 报告问题

请教各位路过的大佬,pytest 多机并行(多进程模式运行)结束后,如何生成一份完整的 allure 报告,把多设备的数据在一份 allure 报告内区分开来(不是以历史记录或重试次数的形式),如下图所示效果:

共收到 11 条回复 时间 点赞

allure 产生的 allure-results 放到不同的目录, 再使用 allure commandline 去指定从多个目录生成 report 就好了。 jenkins 上也有 allure 的插件。 很好做的

孙高飞 回复

多谢大佬解惑,之前也试过这种方法,但总是会显示在重试那一栏里面,看了你的评论之后清理了下之前的项目重试了下果然还是可以的

孙高飞 回复

大佬 请教一下 allure2 可以自己指定一个端口号启动 web 服务吗

孙高飞 回复

能不能每次都自动刷新?感觉每次都等重启 allure serve

疯的蜗牛 回复

我记得是可以的, 就用 allure commandline 启动的时候就有个参数是指定端口号的

恒温 回复

allure 好像现在还是做不到把

allure 只是一个报告样式,按理说应该想办法把数据丢到一起去,交由 allure 展示

孙高飞 回复

用了下面的命令生成 report
allure generate result_A result_B -o allure_report_path
效果如下图所示:
result_B 的数据还是会以重试次数添加到 retry 那一栏

最终还是得不到下图中想要的效果:
每台设备一一对应其执行的 case

大佬知道这是啥原因吗,或者有啥好的建议能指点下吗,不胜感激

因为你这俩 case 的名字是一样的, 它认为是 retry 的结果。 你 case 换个名字就行了

孙高飞 回复

因为我是多台设备运行一套 case 的,所以几台设备运行的 case 的名称都是一样的

那这样是不行的。 你得在 allure 的装饰器里填写的字符串上做手脚了, 别用写死的字符串, 用变量。 外部你运行 case 的时候传递设备名称或者别的唯一标识符进来, 然后生成这个字符串

满级质量守卫 关闭了讨论 11月10日 16:40
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册