首页 > 编程语言 >python+allure报告内容+发送钉钉消息

python+allure报告内容+发送钉钉消息

时间:2023-06-19 17:45:16浏览次数:46  
标签:count api python self 发送 failed allure path data

一、钉钉配置获取

1.点击钉钉左上角"设置"

 2.找到机器人管理,点击“前往设置”,选择自定义机器人

 3.设置名称和群,安全设置可不加,保存url后续接口请求需要用到

 

4.三种安全设置

 二、pyhon脚本

注:修改机器人URL和报告路径后即可使用,转载!

# coding=gbk
import csv
import json
import requests
import os
#报告地址
cureent_path=os.path.dirname(__file__)
suites_path=os.path.join(cureent_path,'../report/html/data/suites.csv')

class DingdingUtiles():
def __init__(self,case_path=suites_path):
self.case_path = case_path #报告存放的地址 suites.csv #..\reports\html_reports\data\suites.csv
self.data_deposit = [] #数据存储
self.api_run_count = 0 #总数
self.api_passed_count = 0 #失败数
self.api_failed_count = 0 #成功数
self.failed_case_name = [] #接口名称
self.failed_case_path = [] #接口地址

#读取报告allure报告生成的csv文件
def primary_data(self):
self.data_deposit = []
file_name = csv.reader(open(self.case_path, 'r', encoding='UTF8'))
for i in file_name:
if i[0] != 'Status':
self.data_deposit.append(i)
self.api_run_count = len(self.data_deposit)
for i in self.data_deposit:
if i[0] == 'passed': # 成功
self.api_passed_count += 1
elif i[0] == 'failed':
self.failed_case_name.append(i[9])
self.api_failed_count += 1

#推送给机器人消息
def dd_push(self):
self.primary_data() #运行
HEADERS = {"Content-Type": "application/json;charset=utf-8"}
url = "机器人url"
# content里面要设置关键字 我机器人设置的关键字为'接口测试结果:'
data_info = {
"msgtype": "text",
"text": {
"content": "接口测试结果:" + f'\n总共运行{self.api_run_count}条用例'
+ f'\n成功{self.api_passed_count}条用例'
+ f'\n失败{self.api_failed_count}条用例'
+ f'\n失败用例名称{str(self.failed_case_name)}'
# + f'\n失败用例地址{str(failed_case_path)}'
},
"isAtAll": False
# 这是配置需要@的人
# ,"at": {"atMobiles": ["15xxxxxx06",'18xxxxxx1']}
}
value = json.dumps(data_info)
response = requests.post(url, data=value, headers=HEADERS)
if response.json()['errmsg'] != 'ok':
print(response.text)

DDu=DingdingUtiles()

if __name__ == '__main__':
DingdingUtiles().dd_push()

标签:count,api,python,self,发送,failed,allure,path,data
From: https://www.cnblogs.com/ahuaa/p/17491744.html

相关文章

  • Python中的DYNAMIXEL快速入门指南
    原文链接:https://www.youtube.com/watch?v=LAizFTTdL8o hisvideowillbecoveringtherequiredcomponentsandhardware&softwaresetup,andfinallyruntheDYNAMIXELinPythonwithDYNAMIXELSDKwithinjustafewMINUTES. 本视频将涵盖所需的组件和硬件、软......
  • python 日志使用
    python日志使用日志基础教程日志是对软件执行时所发生事件的一种追踪方式。软件开发人员对他们的代码添加日志调用,借此来指示某事件的发生。一个事件通过一些包含变量数据的描述信息来描述(比如:每个事件发生时的数据都是不同的)。开发者还会区分事件的重要性,重要性也被称为等级......
  • python 类鸟群Boids
    importsys,argparseimportmathimportnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.animationasanimationfromscipy.spatial.distanceimportsquareform,pdist,cdist#计算点之间的距离fromnumpy.linalgimportnormfrommatplotlib.colors......
  • Python3使用装饰器实现参数类型检查
    fromfunctoolsimportwrapsdefmerge_args(varnames:tuple,args:tuple,kwargs:dict)->dict:"""融合参数-将args参数都转为kwargs参数:paramvarnames:变量名列表:paramargs:args参数:paramkwargs:kwargs参数:return:"&......
  • 江苏工匠杯bad_python
    江苏工匠杯bad_pythonPython逆向拿到附件是一个pyc文件,按照我们常规的python逆向思路,肯定是先试一试能不能uncompyle6反编译.发现无法反编译,我们用010editor查看一下pyc文件的文件头.可以看到文件头是以0D33结尾的330D00000000000000000000000000000000000......
  • Python实现一个简单的栈结构
    基于list来实现一个栈:classSimpleStack:def__init__(self):self.__stack:list=[]​def__iter__(self):returnSimpleStackIterator(self)​def__len__(self):returnlen(self.__stack)​def__getitem__(self,index)......
  • 使用Flow发送企业应用的通知到微信里
    今天我们以kintone作为企业应用管理平台来解释,怎么使用flow发送企业的通知到微信上。完成后的样子1.MicrosoftFlow响应kintone添加记录的Webhook。2.MicrosoftFlow向微信发送消息。微信是什么?微信有点类似于中国版的LINE,在中国被广泛使用。这次我们使用的是,针对企业的微信,也就是企业......
  • 使用Flow发送企业应用的通知到微信里
    今天我们以kintone作为企业应用管理平台来解释,怎么使用flow发送企业的通知到微信上。完成后的样子1.MicrosoftFlow响应kintone添加记录的Webhook。2.MicrosoftFlow向微信发送消息。微信是什么?微信有点类似于中国版的LINE,在中国被广泛使用。这次我们使用的是,针对企业的微信,也就是......
  • Python3中的函数对象
    在Python中一切皆对象,函数也是一种对象,有相关的属性和方法。对于任意对象,我们可以用dir()函数来获取其内置的属性及方法名,例如:defadd(a:int,b:int=1)->int:"""加法函数"""returna+bprint(dir(add))运行结果如下:['__annotations__','__call__','_......
  • Retrofit通过OkHttp发送请求的过程
    retrofit是对okhttp的封装。retrofit使用注解来创建请求的,retrofit的注解有哪些,分别代表什么意义,有大量的博客都有介绍,我就不重复了。但注解创建的请求,很显然是不能被okhttp识别的,其中必定有个转换的过程。这个过程我没有搜到,所以我阅读了retrofig源码,把用注解创建的请求,变为okhttp......