亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

python使用jenkins發送企業微信通知的實現

瀏覽:25日期:2022-06-14 16:51:51

如果只是想實現將jenkins的構建結果發送到企業微信進行通知,最簡便的方式是安裝Qy Wechat Notification Plugin插件,網上教程很多就不重復寫了,可參考:

一、前言

最近使用Jenkins進行自動化部署,但是部署后,并沒有相應的通知,雖然有郵件發送通知,但是發現郵件會受限于接收方的接收設置,導致不能及時看到相關的發布內容。而由于公司使用的是企業微信,因此考慮Jenkins通知企業微信機器人的實現方式。

二、使用企業微信推送的優勢

實時提醒項目參與人員項目信息的更新情況

便于查看

三、配置3.1 企業微信的配置

3.1.1 進入企業微信群

進入某個群 -> 右擊群標簽,添加群機器人注意:企業微信貌似沒有像釘釘那樣設置配置群機器人權限,因此任何人都能添加機器人。相對于釘釘有點落后

3.1.2 填寫機器人信息

python使用jenkins發送企業微信通知的實現

python使用jenkins發送企業微信通知的實現

企業微信的機器人相較于釘釘機器人而言,太簡單了。

3.1.3 復制Hook地址

python使用jenkins發送企業微信通知的實現

注意:此處的Webhook將用于Jenkins當中的參數配置。

3.2 Jenkins的配置

3.2.1 安裝插件

進入系統管理 進入管理插件 搜索插件(Qy Wechat Notification)

python使用jenkins發送企業微信通知的實現

安裝插件后返回首頁

3.2.2 配置Webhook

進入 Jenkins Job 進入 Job 配置 前往構建后的操作 -> 選擇企業微信通知

python使用jenkins發送企業微信通知的實現

設置Webhook

python使用jenkins發送企業微信通知的實現

3.3測試

選擇立即構建 構建 企業微信接收消息-推送結果

python使用jenkins發送企業微信通知的實現

實現的效果如下:

python使用jenkins發送企業微信通知的實現

以下是實現可配置的企業微信通知

1.建企業微信群,添加群機器人,獲取機器人的webhook地址

2.jenkins中創建項目,配置如下:

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

python使用jenkins發送企業微信通知的實現

分別為企業微信機器人的webhook和項目異常時需通知的責任人

python使用jenkins發送企業微信通知的實現

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

python使用jenkins發送企業微信通知的實現

填寫構建執行命令

python使用jenkins發送企業微信通知的實現

構建命令說明如下:

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

以上設置好,即可保存該項目

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

python使用jenkins發送企業微信通知的實現

根據導出的日志獲取運行失敗的測試用例標題

#GetCaseTitle.py#通過控制臺輸出的日志查找是否有運行失敗的用例,如有則獲取失敗用例的標題 class GetCaseTitle: def __init__(self):self.file = 'log.txt' #使用jenkins運行測試用例時,會將控制臺輸出的日志保存到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: #如果標記為失敗的行數大于0 fail_case_line = fail_case_line[:-1] # 去掉最后1行的總運行結果行 fail_case_title = [] for title in fail_case_line: # 分別獲取失敗case的標題title = title.split(’|’)[0]if title not in fail_case_line[-1]: # 判斷當前是否是最后一個用例標題,是則后面不再添加|符號 fail_case_title.append(title + ’ | ’)else: fail_case_title.append(title) fail_case_title = ’’.join(fail_case_title) return fail_case_titleelse: return 0 if __name__ == '__main__': GetCaseTitle().get_fail_case_title()

如存在運行失敗的測試用例,則發送企業微信通知

#wechatNotice.py#實現企業微信通知 import requestsimport jsonimport urllib3# import timeimport sysfrom GetCaseTitle import GetCaseTitle urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) class InformRobot: def __init__(self,url): #webhook地址self.url = urlself.sess = requests.session() def markdown_robot(self, report_url, principal, failcase):data = { 'msgtype': 'markdown', # 消息類型,此時固定為markdown 'markdown': {'content': '提醒!線上UI測試計劃運行失敗 n' + f'測試報告鏈接:[{report_url}]({report_url}) n' + f'負責人:@{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獲取執行失敗的用例 if failcase: #如存在運行失敗的用例則發送企業微信通知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('測試通過')

發送通知的效果如下:

python使用jenkins發送企業微信通知的實現

到此這篇關于python使用jenkins發送企業微信通知的實現的文章就介紹到這了,更多相關python 發送企業微信通知內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

相關文章:
主站蜘蛛池模板: 亚洲成人av | 色综合久久加勒比高清88 | 99欧美在线| 国产情侣草莓视频在线 | 亚欧成人中文字幕一区 | 国产麻豆一级在线观看 | 精品国产一区二区三区四区色 | 日韩欧美国产高清在线观看 | 黄色的视频免费看 | 亚洲丁香婷婷综合久久六月 | 亚洲天天综合色制服丝袜在线 | 亚洲视频在线观看视频 | 日本无卡αv免费视频 | 日韩高清在线不卡 | 国产又黄又爽又色视频免费观看 | 尤物精品在线观看 | 你懂的网站在线 | 精品久久一区二区三区 | 欧美成人免费全部观看在线看 | 国产 在线 | 日韩 | 日韩一区二区三区在线观看 | 国产网红在线观看 | 污污网 | 香蕉精品视频在线观看 | 国产伦精品一区二区三区视频金莲 | 亚洲精品国产一区二区三区四区 | 嫩草网站永久入口 | 成人污视频在线观看 | 91青青国产在线观看免费 | 国产资源在线视频 | 羞羞一区二区三区四区片 | 国产伦精品一区二区三区精品 | 久久成人国产精品二三区 | 午夜性色一区二区三区不卡视频 | 亚洲综合色网站 | 久久国产精品自线拍免费 | 我要看欧美一级毛片 | 大陆精品自在线拍国语 | 日本在线毛片视频免费看 | 欧洲欧美人成免费观看 | 国产一区二区不卡免费观在线 |