当用例执行完成后,希望能给报告反馈,常见的报告反馈有:邮箱/钉钉群/飞书/企业微信 等。
pip 安装插件
pip install pytest-yaml-yoyo
钉钉机器人通知测试结果功能在v1.1.1版本实现
钉钉机器人的设置请参考官方API文档https://open.dingtalk.com/document/group/custom-robot-access
我们主要得到Webhook地址上面的access_token 值
自定义关键字,默认:测试报告,也可以自定义
加签 的值,可以不勾选,也可以勾选。
总的来说,需要记住3个地方:
在config 中配置 DING_TALK, 只有 access_token 值是必须项, 如果配置了 DING_TALK ,那么就会自动启动发送钉钉机器人通知。
如果不启动钉钉机器人通知测试报告,那么把此项注掉即可。
class Config:
version = "v1.0"
class TestConfig(Config):
"""测试环境"""
BASE_URL = 'http://127.0.0.1:8000'
# 钉钉群机器人通知
DING_TALK = {
"access_token": "d2433d2b16cc85*************************************",
}
class UatConfig(Config):
"""联调环境"""
BASE_URL = 'http://192.168.1.1:8001'
# 环境关系映射,方便切换多环境配置
env = {
"test": TestConfig,
"uat": UatConfig
}
在pytest.ini 中配置
[pytest]
env = test
DING_TALK 相关参数说明
运行用例后会自动在钉钉群发送通知
如果这里没有勾选 加签 值
那么只需要配置一个 access_token 即可
DING_TALK = {
"access_token": "d2433d2b16cc85943*********************************",
}
如果这里勾选 加签 值, 那么需同时配置 access_token 和 secret 值
DING_TALK = {
"access_token": "d2433d2b16cc85943*********************************",
"secret": "**************************"
}
奈特指定的人有3个配置可以选择
使用示例
DING_TALK = {
"access_token": "d2433d2b16c*******************",
"at_mobiles": ["15000xxxxxxx", "15001xxxxxxx"]
}
于是就可以看到上图的效果,在内容后面带上@张三
的样式
DING_TALK = {
"access_token": "d2433d2b16cc859******************",
"title": "测试报告",
"at_mobiles": ["15000xxxxxxx", "15001xxxxxxx"]
}
报告的text 内容, 也就是我们看到的
执行结果:
- 运行环境: test
- 运行base_url: http://127.0.0.1:8000
- 持续时间: 0.37 秒
本次运行结果:
- 总用例数: 3
- 通过用例:3
- 失败用例: 0
- 异常用例: 0
- 通过率: 100.0 %
text 的内容,默认是上面的这些,支持markdown 文档格式,如果你需要添加额外的内容,比如加上allure报告地址,那么可以用 text 字段追加内容
DING_TALK = {
"access_token": "d2433d2b16cc***************************",
"title": "测试报告",
"at_mobiles": ["15000xxxxxxx", "15001xxxxxxx"],
"text": ""text": "- 查看报告:[allure报告地址](https://www.cnblogs.com/yoyoketang/)""
}
把上面的https://www.cnblogs.com/yoyoketang/
换成你自己的allure报告地址即可
于是看到以下的效果
总的来说,整个配置都是傻瓜式的,配置非常简单。