学习笔记——测试进阶之路 工作笔记:工作中使用微软 Teams 实现预警消息的推送

大海 · 2022年04月21日 · 2760 次阅读

概要

由于公司内部使用的是微软 Teams,所以我就抽空研究了一下,发现微软 Teams 也可以实现相关消息的推送,Teams 里面主要是要在群组里面建一个 webhook,原理和钉钉推送一样。在此,简单记录一下。

  • 选择某个 Teams 群组,点击Connectors

  • 选择incoming Webhook

  • 点击 configure,进行消息配置

  • 完成消息推送的创建

  • 在项目代码中,直接写一个推送方法,使用的 api 就是刚刚创建的 webhook 地址。

  • 消息推送方法如下,官方还支持其他格式,比如 Markdown。

message.py
# !/usr/bin/python
# -*- coding: utf-8 -*-

"""
@File    : message.py
@Create Time: 2022-06-10 09:33
@Description:
"""

import datetime
import json
import requests


def send_failmessage(case_name, device_number, project_name, case_field, case_value):
    """
    失败就推送消息
    :return:
    """
    url = "https://kone.webhook.office.com/webhookb2/05c68237-007e-4597-b02b-ac2ddfa5923c@2bb82c64-2eb1-43f7-8862-fdc1d2333b50/IncomingWebhook/4046f42ec8794d67a96f7cea14af60d2/702fff0e-9195-447c-8a4c-569a3645455f"
    payload = {
        "title": "<font color=##4682B4 face=\"微软简行楷\">%s 实时数据线上监控 </font>" % case_name,
        "text": "监控报警:<font color=#FF0000 face=\"微软简行楷\">实时数据存在异常 </font>\n\n"
                "设备编号:<font color=#4682B4 face=\"微软简行楷\">%s </font>\n\n" % device_number +
                "所属项目:<font color=#4682B4 face=\"微软简行楷\">%s </font>\n\n" % project_name +
                "监控结果:<font color=#FF0000 face=\"微软简行楷\">%s 字段信息校验失败,实际值为: %s,请及时检查!</font>\n\n" % (case_field, case_value) +
                "测试结果:[测试机平台生成](http://10.100.210.71:9002/)\n\n"
                "推送时间:<font color=#006400 face=\"微软简行楷\">%s </font>" % datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    }
    headers = {
        'Content-Type': 'application/json'
    }
    response = requests.post(url, headers=headers, data=json.dumps(payload))
    print(response.text.encode('utf8'))



if __name__ == '__main__':
    pass
  • 报警消息成功推送到 Teams 群组中的样式

后记

此外,还支持 Jenkins 平台部署,当我们需要去执行某个任务,可以直接将结果通知到 Teams,具体就是在 Jenkins 里安装office365 connector的插件,然后配置这个 webhook 即可。

  • Jenkins build 后推送消息到群组

参考资料

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册