欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)

python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)

熱門標(biāo)簽:小蘇云呼電話機(jī)器人 北瀚ai電銷機(jī)器人官網(wǎng)手機(jī)版 市場上的電銷機(jī)器人 佛山400電話辦理 儋州電話機(jī)器人 地圖標(biāo)注面積 朝陽手機(jī)外呼系統(tǒng) 所得系統(tǒng)電梯怎樣主板設(shè)置外呼 北京電銷外呼系統(tǒng)加盟

如果只是想實(shí)現(xiàn)將jenkins的構(gòu)建結(jié)果發(fā)送到企業(yè)微信進(jìn)行通知,最簡便的方式是安裝Qy Wechat Notification Plugin插件,網(wǎng)上教程很多就不重復(fù)寫了,可參考:

一、前言

最近使用Jenkins進(jìn)行自動化部署,但是部署后,并沒有相應(yīng)的通知,雖然有郵件發(fā)送通知,但是發(fā)現(xiàn)郵件會受限于接收方的接收設(shè)置,導(dǎo)致不能及時看到相關(guān)的發(fā)布內(nèi)容。而由于公司使用的是企業(yè)微信,因此考慮Jenkins通知企業(yè)微信機(jī)器人的實(shí)現(xiàn)方式。

二、使用企業(yè)微信推送的優(yōu)勢

實(shí)時提醒項(xiàng)目參與人員項(xiàng)目信息的更新情況

便于查看

三、配置

3.1 企業(yè)微信的配置

3.1.1 進(jìn)入企業(yè)微信群

進(jìn)入某個群 -> 右擊群標(biāo)簽,添加群機(jī)器人
注意:企業(yè)微信貌似沒有像釘釘那樣設(shè)置配置群機(jī)器人權(quán)限,因此任何人都能添加機(jī)器人。相對于釘釘有點(diǎn)落后

3.1.2 填寫機(jī)器人信息


企業(yè)微信的機(jī)器人相較于釘釘機(jī)器人而言,太簡單了。

3.1.3 復(fù)制Hook地址

注意:此處的Webhook將用于Jenkins當(dāng)中的參數(shù)配置。

3.2 Jenkins的配置

3.2.1 安裝插件

  • 進(jìn)入系統(tǒng)管理
  • 進(jìn)入管理插件
  • 搜索插件(Qy Wechat Notification)

安裝插件后返回首頁

3.2.2 配置Webhook

  • 進(jìn)入 Jenkins Job
  • 進(jìn)入 Job 配置
  • 前往構(gòu)建后的操作 -> 選擇企業(yè)微信通知

設(shè)置Webhook

3.3測試

  • 選擇立即構(gòu)建
  • 構(gòu)建
  • 企業(yè)微信接收消息-推送結(jié)果

實(shí)現(xiàn)的效果如下:

以下是實(shí)現(xiàn)可配置的企業(yè)微信通知

1.建企業(yè)微信群,添加群機(jī)器人,獲取機(jī)器人的webhook地址

2.jenkins中創(chuàng)建項(xiàng)目,配置如下:

general下This project is parameterized,添加兩個string parameter

分別為企業(yè)微信機(jī)器人的webhook和項(xiàng)目異常時需通知的責(zé)任人

用戶默認(rèn)值填對應(yīng)企業(yè)微信群中的用戶名,才可保證發(fā)通知時能夠@到對應(yīng)的人,多個用戶名之間用英文逗號隔開

填寫構(gòu)建執(zhí)行命令

構(gòu)建命令說明如下:

#執(zhí)行測試用例 pybot.bat 用例路徑
#將控制臺輸出導(dǎo)出到log.txt文件,控制臺不再打印日志 >log.txt 
#如果前面一條指令執(zhí)行失敗才執(zhí)行||后面的指令 ||
#如果前面一條指令執(zhí)行成功才執(zhí)行后面的指令 
#執(zhí)行python腳本,發(fā)送企業(yè)微信通知,傳入webhook地址,jenkins項(xiàng)目名稱,發(fā)送通知@責(zé)任人 python ../wechatNotice.py %url% %JOB_NAME% %principal%

pybot.bat 目錄名稱/***.robot >log.txt || python ../wechatNotice.py %url% %JOB_NAME% %principal%

以上設(shè)置好,即可保存該項(xiàng)目

3.本次使用的是robot框架,測試用例運(yùn)行完成后控制臺輸出的日志導(dǎo)出到log.txt文件如下

根據(jù)導(dǎo)出的日志獲取運(yùn)行失敗的測試用例標(biāo)題

#GetCaseTitle.py
#通過控制臺輸出的日志查找是否有運(yùn)行失敗的用例,如有則獲取失敗用例的標(biāo)題
 
class GetCaseTitle:
    def __init__(self):
        self.file = "log.txt"  #使用jenkins運(yùn)行測試用例時,會將控制臺輸出的日志保存到log.txt文件
 
    def get_fail_case_title(self):
        fail_case_line = []
        file = open(self.file, 'r', encoding='gbk')
        for line in file:  # 查找失敗的用例行
            if "FAIL" in line:
                line = str(line).replace(" ", "")
                fail_case_line.append(line)
        file.close()
 
        if len(fail_case_line)>0: #如果標(biāo)記為失敗的行數(shù)大于0
            fail_case_line = fail_case_line[:-1]  # 去掉最后1行的總運(yùn)行結(jié)果行
 
            fail_case_title = []
            for title in fail_case_line:  # 分別獲取失敗case的標(biāo)題
                title = title.split('|')[0]
                if title not in fail_case_line[-1]:  # 判斷當(dāng)前是否是最后一個用例標(biāo)題,是則后面不再添加|符號
                    fail_case_title.append(title + '  |  ')
                else:
                    fail_case_title.append(title)
            fail_case_title = ''.join(fail_case_title)
            return fail_case_title
        else:
            return 0
 
if __name__ == "__main__":
    GetCaseTitle().get_fail_case_title()

如存在運(yùn)行失敗的測試用例,則發(fā)送企業(yè)微信通知

#wechatNotice.py
#實(shí)現(xiàn)企業(yè)微信通知
 
import requests
import json
import urllib3
# import time
import sys
from GetCaseTitle import GetCaseTitle
 
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
 
class InformRobot:
    def __init__(self,url): #webhook地址
        self.url = url
        self.sess = requests.session()
 
    def markdown_robot(self, report_url, principal, failcase):
        data = {
            "msgtype": "markdown",  # 消息類型,此時固定為markdown
            "markdown": {
                "content": "提醒!線上UI測試計(jì)劃運(yùn)行失敗 \n" +
                           f"測試報(bào)告鏈接:[{report_url}]({report_url}) \n" +
                           f"負(fù)責(zé)人:@{principal}  \n"
                           f"失敗用例名稱:{failcase}"
 
            }
        }
 
        re_post = self.sess.post(self.url, data=json.dumps(data), verify=False)
        print(re_post.content, data)
 
 
if __name__ == "__main__":
    failcase = GetCaseTitle().get_fail_case_title()  #從GetCaseTitle.py獲取執(zhí)行失敗的用例
    if failcase:   #如存在運(yùn)行失敗的用例則發(fā)送企業(yè)微信通知
        url=sys.argv[1]
        projectname = sys.argv[2]
        principal = sys.argv[3]
        # execute_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
        report_url = "http://172.18.1.1:8080/job/" + projectname + "/ws/log.html"
        InformRobot(url).markdown_robot(report_url, principal, failcase)
    else:
        print("測試通過")

發(fā)送通知的效果如下:

到此這篇關(guān)于python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)python 發(fā)送企業(yè)微信通知內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 新手必看docker安裝jenkins詳細(xì)教程
  • 幫你快速上手Jenkins并實(shí)現(xiàn)自動化部署
  • Jenkins+Docker持續(xù)集成的實(shí)現(xiàn)
  • jenkins+gitlab+nginx部署前端應(yīng)用實(shí)現(xiàn)
  • 關(guān)于Jenkins + Docker + ASP.NET Core自動化部署的問題(避免踩坑)
  • 基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持續(xù)集成交付環(huán)境的詳細(xì)教程
  • 使用jenkins一鍵打包發(fā)布vue項(xiàng)目的實(shí)現(xiàn)
  • 使用Jenkins Dashboard插件可視化部署的方法
  • 使用jenkins部署springboot項(xiàng)目的方法步驟
  • 關(guān)于jenkins插件下載失敗的解決方法
  • Windows環(huán)境下實(shí)現(xiàn)Jenkins部署的教程詳解
  • Jenkins系統(tǒng)如何進(jìn)行數(shù)據(jù)備份

標(biāo)簽:金融催收 定西 龍巖 商丘 寧夏 酒泉 云南 江蘇

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)》,本文關(guān)鍵詞  python,使用,jenkins,發(fā)送,企業(yè),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)》相關(guān)的同類信息!
  • 本頁收集關(guān)于python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    9191久久久久久久久久久| 国产清纯白嫩初高生在线观看91 | 欧美色视频一区| 国产精品色眯眯| 久久er99精品| 波多野结衣av在线免费观看| 在线观看视频一区| 亚洲欧美偷拍卡通变态| 成人免费不卡视频| 国产福利视频网站| 亚洲国产精品国自产拍av| 韩国成人在线视频| 久久久久久亚洲中文字幕无码| 欧美一区二区视频在线观看2020 | 亚洲一卡二卡三卡四卡五卡| 成人av影院在线| 久久久久久久久久久久久女过产乱| 国产欧美日韩视频一区二区| 国产一区二区三区四区五区入口| 受虐m奴xxx在线观看| 精品国产乱码久久久久久图片 | 一区二区三区国产精华| 91亚洲国产成人精品一区二区三| 色婷婷av一区二区三区gif| 亚洲少妇屁股交4| av激情亚洲男人天堂| 色婷婷狠狠综合| 亚洲综合在线视频| 99精品欧美一区二区三区小说| 午夜少妇久久久久久久久| 综合色天天鬼久久鬼色| 97久久久精品综合88久久| 91电影在线观看| 亚洲一二三四久久| 喷水视频在线观看| 日韩女优视频免费观看| 蜜乳av一区二区| 久久久久亚洲AV成人无在| 欧美韩日一区二区三区| 不卡视频在线观看| 欧美视频你懂的| 日韩影院在线观看| b站大片免费直播| 国产亚洲一二三区| 成人手机在线视频| 欧美日韩亚洲综合在线| 日韩黄色一级片| 日韩福利在线视频| 中文字幕五月欧美| 久久久精品人妻一区二区三区| 国产亚洲欧美激情| 国产精品乱码一区二区三区软件 | 琪琪久久久久日韩精品| 熟女少妇内射日韩亚洲| 国产欧美一区二区三区在线看蜜臀 | 久久久99精品久久| 成人av午夜影院| 欧美日韩一区二区三区视频| 免费在线视频一区| 亚洲女人久久久| 亚洲与欧洲av电影| 99久久人妻无码精品系列| 中文字幕中文字幕一区二区| 农村末发育av片一区二区| 精品国产伦理网| a美女胸又www黄视频久久| 51精品视频一区二区三区| 国产综合成人久久大片91| 色婷婷久久久久swag精品| 三级一区在线视频先锋| 天堂av免费在线| 一区二区三区中文字幕| 精品人妻互换一区二区三区| 国产精品国产三级国产普通话三级| 波多野结衣办公室双飞 | 51精品秘密在线观看| 国产一区欧美二区| 欧美视频日韩视频| 国产高清亚洲一区| 欧美男人的天堂一二区| 国产美女在线观看一区| 精品视频123区在线观看| 国产一区二区免费视频| 欧美精品色一区二区三区| 国产激情视频一区二区三区欧美 | 成人综合婷婷国产精品久久免费| 欧美久久久久中文字幕| 国产成人精品免费视频网站| 欧美一区二区高清| av网站一区二区三区| jlzzjlzz亚洲日本少妇| 精品国产欧美日韩不卡在线观看| 日韩av电影天堂| 色噜噜狠狠色综合欧洲selulu| 久久国产尿小便嘘嘘| 欧美日韩成人综合| 高清国产一区二区| 欧美va亚洲va国产综合| 日本wwww色| 国产精品高清亚洲| 99久久精品免费视频| 亚洲v精品v日韩v欧美v专区| 国产1区2区3区4区| 国产中文一区二区三区| 欧美一区二区人人喊爽| 91免费国产视频网站| 国产日韩欧美一区二区三区乱码| 午夜视频在线观看国产| 亚洲激情欧美激情| 国产稀缺精品盗摄盗拍| 韩国精品主播一区二区在线观看| 欧美一区二区三区在线观看视频 | 91麻豆国产自产在线观看| 国产欧美一区二区精品秋霞影院| 亚洲成人日韩在线| 亚洲成人福利片| 日本韩国视频一区二区| 国产ts人妖一区二区| 久久久三级国产网站| 欧美bbbbb性bbbbb视频| 香蕉成人伊视频在线观看| 欧美中文字幕一区二区三区| 顶级嫩模精品视频在线看| 国产午夜精品美女毛片视频| 日本xxxxxxxxx18| 日本美女一区二区| 欧美电影一区二区| 中文字幕制服丝袜| 一区2区3区在线看| 欧美最新大片在线看| 99这里只有精品| 国产精品青草综合久久久久99| 亚洲天堂岛国片| 精品一区二区在线看| 精品久久久久久久久久久院品网 | 久久久久久久久久影视| 一区二区三区四区在线免费观看| 色综合天天综合在线视频| 成人性视频免费网站| 国产精品国产馆在线真实露脸 | 国产精品一区二区人妻喷水| 亚洲国产精品久久一线不卡| 欧美日韩你懂的| 国产精品成人免费一区久久羞羞| 亚洲国产精品一区二区www在线| 欧美高清性hdvideosex| 手机在线成人av| 日b视频在线观看| 欧美一区二区福利在线| av女人的天堂| 国产在线视频一区二区| 亚洲国产精品传媒在线观看| 男女做暖暖视频| aaa国产一区| 亚洲第一成年网| 欧美一级生活片| 久久久视频6r| 丰满放荡岳乱妇91ww| 亚洲精品你懂的| 欧美二区乱c少妇| 亚洲欧美视频在线播放| 黄色片子在线观看| 久久99精品一区二区三区| 26uuu久久天堂性欧美| 精品国产乱码久久久久夜深人妻| 丝袜美腿一区二区三区| 欧美一区二区性放荡片| 女人裸体性做爰全过| 国产成人综合在线观看| 亚洲欧美综合另类在线卡通| 欧美日韩视频在线观看一区二区三区| 波多野吉衣在线视频| 亚洲午夜国产一区99re久久| 一本久久a久久精品亚洲| 日本人添下边视频免费| 日日夜夜精品免费视频| 精品国产3级a| 色在线观看视频| 中文字幕一二三| 调教+趴+乳夹+国产+精品| 日韩欧美一级二级三级| 国产尤物在线播放| 91在线视频免费91| 亚洲精品国产无天堂网2021| 欧美三级在线播放| 一级黄色性视频| 国产不卡视频一区二区三区| 一区视频在线播放| 欧美中文字幕不卡| 鲁大师私人影院在线观看| 激情成人综合网| 成人欧美一区二区三区| 91精品国产综合久久久久久久| 亚洲国产日韩一区无码精品久久久| 国产乱子伦视频一区二区三区 | 中文字幕一区二区在线观看| 在线成人高清不卡| 中文字幕网站在线观看| 成人精品电影在线观看| 洋洋成人永久网站入口|