pyhon+pytest+jenkins发送报告至工作群教学(企业微信+钉钉)

1.可以看看以下文件的内容,发送报告的内容就是取值以下的内容,服务器里面查看

进入以下文件看看,vi 进入prometheusData.txt 这个txt文件夹
cd /var/lib/jenkins/workspace/ApiTest/allure-report/export

注意:可以把allure-report的文件从服务器上面下载下来,放在你项目的下一级里面,这样有助于编写代码哦

2.下面开始编写python的代码,注意:这个代码支持企业微信和钉钉,只需要把里面的webhook 换掉就行

import os
import requests
# 导入jenkins文件的包
from jenkins import Jenkins

# jenkins的url地址(就是域名,本机就是ip+端口号)
jenkins_url = "http://192.168.2.112:8080/"

# 登录jenkins
server = Jenkins(jenkins_url, username="admin", password="123456")

# 选择你的jenkins项目名称的地址,这段代码加上jenkins的url就会进入你的ApiTest项目
job_name = "job/ApiTest"

# 发消息的地址
job_url = server.get_info(job_name)["url"]

# 获取最新的构建任务名称,用于拼接后续allure地址
job_last_number = server.get_info(job_name)["lastBuild"]["number"]

# 测试报告allure地址
report_url = job_url + str(job_last_number) + "/allure"


def push_message():
    content = {}
    file_path = os.path.dirname(os.getcwd()) + "/allure-report/export/prometheusData.txt"
    f = open(file_path, "r", encoding="utf-8")
    for line in f.readlines():
        launch_name = line.strip("\n").split()[0]
        num = line.strip("\n").split()[1]
        # 把分割出来的数据组装成键值对 update是一个方法用于组装字典的
        content.update({launch_name: num})
    f.close()
    passed_num = content["launch_status_passed"]  # 通过数量
    failed_num = content["launch_status_failed"]  # 失败数量
    broken_num = content["launch_status_broken"]  # 阻塞数量
    skipped_num = content["launch_status_skipped"]  # 跳过数量
    case_num = content["launch_retries_run"]  # 总数量

    """
    钉钉消息发送,通过webhook发送消息
    """
    webhook = "这里放的你的webhook地址,也就是你在企业微信或者钉钉里面添加机器人生成的那个链接"
    content = {
        "msgtype": "text",
        "text": {
            "content": "接口自动化脚本执行结果: \n运行总数" + case_num
            + "\n通过数量: " + passed_num
            + "\n失败数量: " + failed_num
            + "\n阻塞数量: " + broken_num
            + "\n跳过数量: " + skipped_num
            + "\n构建地址: " + job_url
            + "\n报告地址: " + report_url
        }
    }
    requests.post(url=webhook, json=content, verify=False) 因为他是https的所以需要加verify=False让他不报警告

push_message()

3.开始设置钉钉或者企业微信,你先找到你要发送消息的群组

上面就是设置钉钉了,那么下面来看看设置企业微信的吧

好了,企业微信和钉钉的机器人就配置好了 webhook也拿到了

4.安装插件 Post Build task 进行生成报告后的shell执行

5.点击你的自动化脚本,在点击配置,把以下内容加进去

#!/bin/bash
cd ${WORKSPACE}/message
python3 send_dingdin.py

6.然后现在你的自动化任务执行之后就会把结果发在工作群了

  • 15
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值