
Pytest学习(十九)- 报告Environment 不显示怎么办
发布日期:2021-05-09 04:59:56
浏览次数:17
分类:博客文章
本文共 2057 字,大约阅读时间需要 6 分钟。
前言
上一篇文章我们用allure2生成美丽的测试报告,但仔细发现,有个不足就是环境参数没有显示,虽然这块是否显示不影响什么,但是,我还是想让他显示。
Environment是干啥的?
可以理解成环境变量参数,没有什么实际作用,个人觉得只是为了让别人知道本次测试的运行环境参数而已,显示成什么都是自己自定义的
如下图,是不显示环境参数的:如何正常显示
通过创建environment.properties或者environment.xml文件,
environment.properties示例:Browser=ChromeBrowser.Version=81.0.4044.92Stand=ProductionApiUrl=127.0.0.1/loginpython.Version=3.7.2
environment.xml示例:
Browser Chrome Browser.Version 81.0.4044.92 Stand Production ApiUrl 127.0.0.1/login python.Version 3.7.2
注意:中文会乱码
文件位置如下图:在执行生成报告命令
allure serve allure
结果如下:
在指定目录下生成测试报告
需指定生成“不认识的json和txt文件路径位置”,即allure文件位置,示例如下:
allure generate ./allure -o ./report --clean
指定文文件位置,如下
执行结果如下:
Categories
直译:分类
通俗理解:测试用例结果的分类
默认情况下,有两类缺陷:
- Product defects 产品缺陷(测试结果:failed)
- Test defects 测试缺陷(测试结果:error/broken)我们是可以创建自定义缺陷分类的,将 categories.json 文件添加到allure-results目录即可(和上面environment.properties放同一个目录)
categories.json
[ { "name": "Ignored tests", "matchedStatuses": ["skipped"] }, { "name": "Infrastructure problems", "matchedStatuses": ["broken", "failed"], "messageRegex": ".*bye-bye.*" }, { "name": "Outdated tests", "matchedStatuses": ["broken"], "traceRegex": ".*FileNotFoundException.*" }, { "name": "Product defects", "matchedStatuses": ["failed"] }, { "name": "Test defects", "matchedStatuses": ["broken"] }]
参数的含义
- name:分类名称
- matchedStatuses:测试用例的运行状态,默认["failed", "broken", "passed", "skipped", "unknown"]
- messageRegex:测试用例运行的错误信息,默认是 .* ,是通过正则去匹配的哦!
- traceRegex:测试用例运行的错误堆栈信息,默认是 .* ,也是通过正则去匹配的哦!注意这里的name是可以写中文的哦!
Flaky test
用法:在类或者方法上直接加 @Flaky
官方也说了:可以将整个测试类标记为Flaky那什么是Flaky呢?
- 简单来说就是,不够稳定的测试用例集,有可能前阵子还运行成功,过阵子就运行失败,理解成“闪烁”
- 标记成Flaky的好处就是:当用例失败的情况下,我们能获取足够详细的信息,毕竟有可能某些测试用例是非常重要的
- 如果不标记为Flaky的话,可能就要禁用这些测试
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年04月04日 22时28分08秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
PHP与ASP转义双引号的区别
2021-05-09
ES6通过Set数组去重
2021-05-09
春风下也有落叶
2021-05-09
[IDEA] IntelliJ IDEA 安装教程
2021-05-09
XNA实现骨骼动画 归纳总结
2021-05-09
Java读书笔记06 继承
2021-05-09
Android中View的绘制过程 onMeasure方法简述 附有自定义View例子
2021-05-09
Android中的Interpolator
2021-05-09
Java虚拟机JVM学习07 类的卸载机制
2021-05-09
[DOM Event Learning] Section 4 事件分发和DOM事件流
2021-05-09
Mockito Hello World
2021-05-09
Material Design Animation
2021-05-09
身份证验证
2021-05-09
递归的精髓是什么?
2021-05-09
MySQL 事务初识
2021-05-09
MySQL InnoDB 锁总结(二)- RC 加锁流程
2021-05-09
DC-2靶机渗透
2021-05-09
缓冲区溢出实例(一)--Windows
2021-05-09
Moonraker 靶机渗透
2021-05-09
S2-052 漏洞复现
2021-05-09