Pythonコード
:ネイル群ロボットトークンの取得はを参照してください。グループのメッセージ通知を釘付けジェンキンスビルド結果
#!\usr\bin\python3.6
# coding=utf-8
# Author: 文
from time import strftime
from requests import session
def nail_inform(statis):
"""
:param statis: 测试用例统计 字典 key-sum: 总用例数 key-fail: 失败用例数 key-ratio: 测试通过率
"""
# 钉钉接口与机器人token
url = "https://oapi.dingtalk.com/robot/send?" \
"access_token=34569456787221097652032705f0a2155b0794d98jb878641cbe8f2e7245"
# 头部信息(Content-Type必填)
header = {
"Content-Type": "application/json",
"Charset": "UTF-8"
}
now = strftime("%Y-%m-%d %H:%M:%S") # 获取测试时间
msg = "#自动化测试报告 #: http://www.xxxx.com/job/{{jenkins中job名称}}/HTML_20Report/\n" \
"时 间: %s\n" \
"总用例数: %s\n" \
"失败用例数: %s\n" \
"测试通过率: %s\n\n" % (now, statis["sum"], statis["fail"], statis["ratio"])
payload = {
"msgtype": "text",
"text": {
"content": msg # 抓取数据发送的内容放到msg
},
"at": {
"isAtAll": True, # @全体成员(在此可设置@特定某人)
}
}
r = session().post(url=url, json=payload, headers=header)
print(r.json()) # 打印接口请求返回结果
if __name__ == "__main__":
statis = {"sum": 29,"fail": 2,"ratio": "93.10%"}
nail_inform(statis=statis)
注:としてソース、利用可能な試験結果から、特にテストパラメータ
自動テスト通知の詳細
次のように送信: