CN114756467A - 埋点数据检测方法、装置、存储介质和设备 - Google Patents

埋点数据检测方法、装置、存储介质和设备 Download PDF

Info

Publication number
CN114756467A
CN114756467A CN202210421284.6A CN202210421284A CN114756467A CN 114756467 A CN114756467 A CN 114756467A CN 202210421284 A CN202210421284 A CN 202210421284A CN 114756467 A CN114756467 A CN 114756467A
Authority
CN
China
Prior art keywords
point data
buried point
field
data
field value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210421284.6A
Other languages
English (en)
Inventor
黄赞群
聂清阳
喻昱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan MgtvCom Interactive Entertainment Media Co Ltd
Original Assignee
Hunan MgtvCom Interactive Entertainment Media Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hunan MgtvCom Interactive Entertainment Media Co Ltd filed Critical Hunan MgtvCom Interactive Entertainment Media Co Ltd
Priority to CN202210421284.6A priority Critical patent/CN114756467A/zh
Publication of CN114756467A publication Critical patent/CN114756467A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种埋点数据检测方法、装置、存储介质和设备,该方法为:从数据表中获取多个埋点数据;从模板数据表中获取预期模板数据以及预期上报条数;从各个埋点数据中,选取域名信息与域名信息模板相同的、且请求方式与请求方式模板相同、且主体信息包含有目标字段的埋点数据,作为有效埋点数据;统计有效埋点数据的数量,得到实际上报条数;将实际上报条数与预期上报条数进行比对,得到上报条数验证结果;利用字段值验证规则,对有效埋点数据的目标字段的字段值进行验证,得到字段值验证结果;基于上报条数验证结果,以及字段值验证结果,生成检测报告。该方法能避免对应用的每个埋点数据进行人工校验,从而有效提高埋点数据的检测效率。

Description

埋点数据检测方法、装置、存储介质和设备
技术领域
本申请涉及软件测试领域,尤其涉及一种埋点数据检测方法、装置、存储介质和设备。
背景技术
大数据时代已经来临,如今大部分的互联网应用都存在埋点数据上报需求,大数据不仅提供人们查看分享的同时,也在进一步影响着人们工作、生活、娱乐等等各个方面。为了确保终端产品的良好运行,需要依据埋点数据的上报结果对应用进行维护,为此,对埋点数据进行准确性检测,成为业内关注热点。
目前,现有的埋点数据检测方式,需要对每个埋点数据的上报方式、格式、字段和字段值进行人工校验,检测效率较低。
发明内容
本申请提供了一种埋点数据检测方法、装置、存储介质和设备,目的在于提高埋点数据的检测效率。
为了实现上述目的,本申请提供了以下技术方案:
一种埋点数据检测方法,包括:
在接收到用户的检测指令后,从预设的数据表中获取所述检测指令所示UI场景的多个埋点数据;所述埋点数据包括域名信息、请求方式以及主体信息;
从预设的模板数据表中获取所述UI场景的预期模板数据,以及预期上报条数;所述预期模板数据包括域名信息模板、请求方式模板、目标字段以及所述目标字段的字段值验证规则;
从各个所述埋点数据中,选取域名信息与所述域名信息模板相同的、且请求方式与所述请求方式模板相同、且主体信息包含有所述目标字段的埋点数据,作为有效埋点数据;
统计所述有效埋点数据的数量,得到实际上报条数;
将所述实际上报条数与所述预期上报条数进行比对,得到所述UI场景的上报条数验证结果;
利用所述字段值验证规则,对所述有效埋点数据的主体信息所示目标字段的字段值进行验证,得到所述有效埋点数据的字段值验证结果;
基于所述上报条数验证结果,以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户。
可选的,在接收到用户的检测指令后,从预设的数据表中获取所述检测指令所示UI场景的多个埋点数据,包括:
预先调用预设的自动化测试工具,触发终端启动预先安装的应用;
控制所述终端绑定服务器的网络节点地址,以使所述应用依据预先配置的UI场景,向所述服务器发送大数据请求;
对所述大数据请求进行解析,得到所述UI场景的一个或多个埋点数据;
将所述UI场景的埋点数据存储到预设的数据表中;
在接收到用户的检测指令后,从所述数据表中获取所述检测指令所示UI场景的多个埋点数据。
可选的,所述控制所述终端绑定服务器的网络节点地址,以使所述应用依据预先配置的UI场景,向所述服务器发送大数据请求之前,还包括:
删除所述数据表中的埋点数据。
可选的,所述将所述实际上报条数与所述预期上报条数进行比对,得到所述UI场景的上报条数验证结果,包括:
若所述实际上报条数与所述预期上报条数相同,则确定所述UI场景的上报条数验证结果为:所述有效埋点数据的上报条数符合预期;
若所述实际上报条数与所述预期上报条数不相同,则确定所述UI场景的上报条数验证结果为:所述有效埋点数据的上报条数不符合预期。
可选的,所述利用所述字段值验证规则,对所述有效埋点数据的主体信息所示目标字段的字段值进行验证,得到所述有效埋点数据的字段值验证结果,包括:
若所述有效埋点数据的主体信息所示目标字段的字段值,符合所述字段值验证规则,则确定所述有效埋点数据的字段值验证结果为:所述有效埋点数据通过字段值验证;
若所述有效埋点数据的主体信息所示目标字段的字段值,不符合所述字段值验证规则,则确定所述有效埋点数据的字段值验证结果为:所述有效埋点数据未通过字段值验证。
可选的,所述从各个所述埋点数据中,选取域名信息与所述域名信息模板相同的、且请求方式与所述请求方式模板相同、且主体信息包含有所述目标字段的埋点数据,作为有效埋点数据之后,还包括:
对于每个所述有效埋点数据,对所述有效埋点数据的主体信息进行缺失值校验,得到所述有效埋点数据的缺失值校验结果;
对所述有效埋点数据的主体信息进行冗余校验,得到所述有效埋点数据的冗余校验结果;
基于所述缺失值校验结果以及所述冗余校验结果,生成所述有效埋点数据的字段验证结果;
其中,若所述缺失值校验结果指示主体信息无缺失字段、且所述冗余校验结果指示主体信息无冗余字段,则确定所述有效埋点数据的字段验证结果为:所述有效埋点数据通过字段验证;
若所述缺失值校验结果指示主体信息存在缺失字段,以及所述冗余校验结果指示主体信息存在冗余字段,则确定所述有效埋点数据的字段验证结果为:所述有效埋点数据未通过字段验证。
可选的,所述基于所述上报条数验证结果,以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户,包括:
基于所述上报条数验证结果、所述字段验证结果以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户。
一种埋点数据检测装置,包括:
第一获取单元,用于在接收到用户的检测指令后,从预设的数据表中获取所述检测指令所示UI场景的多个埋点数据;所述埋点数据包括域名信息、请求方式以及主体信息;
第二获取单元,用于从预设的模板数据表中获取所述UI场景的预期模板数据,以及预期上报条数;所述预期模板数据包括域名信息模板、请求方式模板、目标字段以及所述目标字段的字段值验证规则;
数据筛选单元,用于从各个所述埋点数据中,选取域名信息与所述域名信息模板相同的、且请求方式与所述请求方式模板相同、且主体信息包含有所述目标字段的埋点数据,作为有效埋点数据;
条数统计单元,用于统计所述有效埋点数据的数量,得到实际上报条数;
条数比对单元,用于将所述实际上报条数与所述预期上报条数进行比对,得到所述UI场景的上报条数验证结果;
字段值验证单元,用于利用所述字段值验证规则,对所述有效埋点数据的主体信息所示目标字段的字段值进行验证,得到所述有效埋点数据的字段值验证结果;
报告生成单元,用于基于所述上报条数验证结果,以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户。
一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行所述的埋点数据检测方法。
一种埋点数据检测设备,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行所述的埋点数据检测方法。
本申请提供的技术方案,在接收到用户的检测指令后,从预设的数据表中获取检测指令所示UI场景的多个埋点数据。从预设的模板数据表中获取UI场景的预期模板数据,以及预期上报条数。从各个埋点数据中,选取域名信息与域名信息模板相同的、且请求方式与请求方式模板相同、且主体信息包含有目标字段的埋点数据,作为有效埋点数据。统计有效埋点数据的数量,得到实际上报条数。将实际上报条数与预期上报条数进行比对,得到UI场景的上报条数验证结果。利用字段值验证规则,对有效埋点数据的主体信息所示目标字段的字段值进行验证,得到有效埋点数据的字段值验证结果。基于上报条数验证结果,以及字段值验证结果,生成检测报告,并将检测报告发送给用户。利用本申请所示方案,用户无需对应用的每个埋点数据进行人工校验,只需输入检测指令,便可实现埋点数据的自动化检测,从而有效提高埋点数据的检测效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的一种埋点数据检测方法的流程示意图;
图1b为本申请实施例提供的一种埋点数据检测方法的流程示意图;
图2为本申请实施例提供的另一种埋点数据检测方法的流程示意图;
图3为本申请实施例提供的一种埋点数据检测装置的架构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1a和图1b所示,为本申请实施例提供的一种埋点数据检测方法的流程示意图,应用于服务器,包括如下步骤:
S101:预先调用预设的自动化测试工具,触发终端启动预先安装的应用。
其中,预设的自动化测试工具包括但不限于为:Appium、Calabash、Robotium、Frank以及UIAutomator等。在本申请实施例中,触发终端启动预先安装的应用,仅仅是对预先录制的用例进行回放,用例的录制和回放各自的具体实现原理,为本领域技术人员所熟悉的公知常识,这里不再赘述。
S102:删除预设的数据表中的埋点数据。
其中,为了防止后续从数据表中获取无效的埋点数据,为此,需要提前先清空数据表中的埋点数据。
在本申请实施例中,可以调用预设的数据清除接口,删除数据表中的埋点数据,数据清除接口的具体表现逻辑可以为:
test_requrl="http://10.200.8.114:80/test"
delete_requrl="http://10.200.8.114:80/delete"
defcheck_result(field,platform,test_point,field_table,act_count,CaseName):
Test_data={}
test_data['field']=field
test_data['platform']=platform
test_data['test_point']=test_point
test_data['field_table']=field_table
test_data['act_count']=act_count
test_data_urlencode=urllib.urlencode(test_data)
req=urllib2.Request(url=test_requrl,data=test_data_urlencode)
res_data=urllib2.urlopen(req)
res=res_data.read()
res=eval(res)
return(res)
defdelete_data(self,platform):
test_data={}
test_data['platform']=platform
test_data_urlencode=urllib.urlencode(test_data)
req=urllib2.Request(url=delete_requrl,data=test_data_urlencode)
res_data=urllib2.urlopen(req)
res=res_data.read()
return(res)。
需要说明的是,上述具体实现逻辑仅仅用于举例说明。
S103:控制终端绑定服务器的网络节点(host)地址,以使应用依据预先配置的UI场景,向服务器发送大数据请求。
其中,所谓的UI场景,用于指示埋点数据的上报场景,即使用应用触发埋点数据上报的场景。
一般来讲,本申请实施例所示服务器采用的是Django架构,为此,基于Django架构的数据采集特性,只需控制终端绑定服务器的网络节点地址,应用便可依据UI场景,向服务器发送大数据请求,实现埋点数据的上报。
S104:对大数据请求进行解析,得到UI场景的一个或多个埋点数据。
其中,埋点数据包括用户代理(usergent)信息、域名信息、请求方式以及主体(body)信息。具体的,用户代理信息包括终端的设备信息,该设备信息可用于指示埋点数据的数据来源,请求方式包括但不限于为:get方法和post方法。
S105:将UI场景的埋点数据存储到数据表中。
其中,埋点数据所示的用户代理信息、域名信息、请求方式以及主体信息,均依据键值对的形式存储在数据表的各个字段中,且各个字段包括platform字段、host字段、httpmath字段以及data字段。
具体的,与platform字段作为key对应的value用于记录用户代理信息,与host字段作为key对应的value用于记录域名信息,与httpmath字段作为key对应的value用于记录请求方式,与data字段作为key对应的value用于记录主体信息。
一般来讲,可以调用request.META['HTTP_USER_AGENT']函数,将用户代理信息存储到数据表的platform字段,可以调用request.get_host函数,将域名信息存储到数据表的host字段,可以调用request.method函数,将请求方式存储到数据表的httpmath字段,将主体信息存储到数据表的data字段。
在将主体信息存储到数据表的过程中,还需要对主体信息进行格式转换,得到主体信息的json数据(json数据可视为多个字段的集合,且每个字段均有字段值),而后再将主体信息的json数据,存储到数据表的data字段。
另外,本申请实施例所示的数据表,还可用于存储UI场景的更新时间,具体的,可以将更新时间存储到数据表的update_time字段,另外,本申请实施例所示的数据表,可以参见表1所示。
表1
Figure BDA0003607816640000081
需要说明的是,上述表1所示内容仅仅用于举例说明。
S106:在接收到用户的检测指令后,从数据表中获取检测指令所示UI场景的多个埋点数据。
S107:从预设的模板数据表中,获取检测指令所示UI场景的预期模板数据,以及预期上报条数。
其中,预期模板数据包括各个模板字段,各个模板字段包括模板host字段、模板httpmath字段以及模板data字段。具体的,模板host字段用于记录域名信息模板,模板httpmath字段用于记录请求方式模板,模板data字段用于记录目标字段,以及目标字段的字段值验证规则。
需要说明的是,字段值验证规则的表现形式包括但不限于为:具体字符、1000、nul、size_、change_、url_、config、list1_、lobstring_、dict1_、FieldMiss。
一般来讲,具体字符代表将埋点数据的目标字段与具体字符进行比较,若目标字段与具体字符相同,则确定目标字段与具体字符完全匹配,埋点数据通过字段值验证。若目标字段与具体字符不相同,则确定目标字段与具体字符不完全匹配,埋点数据未通过字段值验证。
具体的,假设具体字符为f169a827000796,且埋点数据的目标字段为f169a827000796,明显的,目标字段与具体字符相同,故可确定目标字段与具体字符完全匹配,埋点数据通过字段值验证。
10000代表将埋点数据的目标字段进行非空判断,若目标字段非空,则确定埋点数据通过字段值验证,若目标字段为空,则确定埋点数据未通过字段值验证。
nul代表将埋点数据的目标字段进行空判断,若目标字段为空,则确定埋点数据通过字段值验证,若目标字段非空,则确定埋点数据未通过字段值验证。
size_代表将埋点数据的目标字段所包含的字段值进行数值大小判断,若目标字段所包含字段值大于预设阈值,则确定埋点数据通过字段值验证,若目标字段所包含字段值不大于预设阈值,则确定埋点数据未通过字段值验证。具体的,以size_1000为例,当目标字段所包含的字段值大于1000时,则确定埋点数据通过字段值验证。
change_代表将埋点数据的目标字段的字符长度进行长度判断,若目标字段的字符长度大于预设长度,则确定埋点数据通过字段值验证,若目标字段的字符长度不大于预设长度,则确定埋点数据未通过字段值验证。具体的,以change_36为例,当目标字段的字符长度大于36时,则确定埋点数据通过字段值验证。
url_代表将埋点数据的目标字段进行字符模糊匹配,若目标字段包含预设字符串,则确定埋点数据通过字段值验证,若目标字段不包含预设字符串,则确定埋点数据未通过字段值验证。
config代表将埋点数据的目标字段进行公共字段匹配,若目标字段包含有预设公共字段,则确定埋点数据通过字段值验证,若目标字段不包含有预设公共字段,则确定埋点数据未通过字段值验证。
list1_代表将埋点数据的目标字段所示的表单格式进行判断,若目标字段所示的表单格式为预设表单格式,则确定埋点数据通过字段值验证,若目标字段所示的表单格式不为预设表单格式,则确定埋点数据未通过字段值验证。
lobstring_代表将埋点数据的目标字段进行键值对校验,若目标字段所示的键值对为预设键值对,则确定埋点数据通过字段值验证,若目标字段所示的键值对不为预设键值对,则确定埋点数据未通过字段值验证。
dict1_代表将埋点数据的目标字段进行字典校验,若目标字段所示的字典格式为预设字典格式,则确定埋点数据通过字段值验证,若目标字段所示的字典格式不为预设字典格式,则确定埋点数据未通过字段值验证。
FieldMiss代表无需对埋点数据的目标字段进行字段值验证,直接确定埋点数据通过字段值验证。
S108:从检测指令所示UI场景的各个埋点数据中,选取域名信息与域名信息模板相同、且请求方式与请求方式模板相同、且主体信息包含有目标字段的埋点数据,作为有效埋点数据。
其中,模板data字段所记录的目标字段的数量为一个或多个,且目标字段的表现形式通常为${field}。
具体的,若目标字段的数量为一个,例如${field}={'act':'pvs'},则从各个候选埋点数据中,获取主体信息包含有{'act':'pvs'}的候选埋点数据,作为有效埋点数据。一般来讲,act代表目标字段,pvs代表目标字段的字段值,即从各个候选埋点数据中,获取主体信息包含有act字段、且act字段的字段值为pvs的候选埋点数据,作为有效埋点数据。
若目标字段的数量为多个,例如${field}={'logtype':'show','flag':'1'},则从各个候选埋点数据中,获取主体信息包含有{'logtype':'show','flag':'1'}的候选埋点数据,作为有效埋点数据。
此外,还可以使用模糊匹配的方式,来实现对有效埋点数据的选取过程,假设目标字段的数量为多个,例如${field}={'logtype':'show','lob':'smod=5'},则从各个候选埋点数据中,选取主体信息包含有{'logtype':'show'}以及{smod=5}的候选埋点数据,作为有效埋点数据。
S109:统计有效埋点数据的数量,得到实际上报条数。
S110:将实际上报条数与预期上报条数进行比对,得到上报条数验证结果。
其中,若实际上报条数与预期上报条数相同,则确定UI场景的上报条数验证结果为:有效埋点数据的上报条数符合预期。
若实际上报条数与预期上报条数不相同,则确定UI场景的上报条数验证结果为:有效埋点数据的上报条数不符合预期。
具体的,将实际上报条数与预期上报条数进行比对的具体实现逻辑可以为:
defDiffCount(self,data,count):
print'start diffcount'
count=int(count)
DataCount=len(data)
ifDataCount==count:
print'diffcountdone'
return(1,”)
elifcount==9:
ifDataCount>0:
print'diffcount DataCount>0'
return(1,”)
else:
print'diffcountnot DataCount>0'
return(0,DataCount)
else:
return(0,DataCount)。
需要说明的是,上述具体实现逻辑仅仅用于举例说明。
此外,若预期上报条数的取值为零,则代表无需对埋点数据的上报条数进行验证,可直接确定UI场景的上报条数验证结果为:有效埋点数据的上报条数符合预期。
S111:对于每个有效埋点数据,对有效埋点数据的主体信息进行缺失值校验,得到有效埋点数据的缺失值校验结果。
其中,可以调用missing函数,对有效埋点数据的主体信息进行缺失值校验,具体的,调用missing函数的具体实现逻辑可以为:
missing=set(templete).difference(set(realtime))。
S112:对有效埋点数据的主体信息进行冗余校验,得到有效埋点数据的冗余校验结果。
其中,可以调用redundant函数,对有效埋点数据的主体信息进行冗余校验,具体的,调用redundant函数的具体实现逻辑可以为:
redundant=set(realtime).difference(set(templete))。
S113:基于缺失值校验结果以及冗余校验结果,生成有效埋点数据的字段验证结果。
其中,若缺失值校验结果指示主体信息无缺失字段、且冗余校验结果指示主体信息无冗余字段,则确定有效埋点数据的字段验证结果为:有效埋点数据通过字段验证。
若缺失值校验结果指示主体信息存在缺失字段,以及冗余校验结果指示主体信息存在冗余字段,则确定有效埋点数据的字段验证结果为:有效埋点数据未通过字段验证。
需要说明的是,在调用missing函数,对有效埋点数据的主体信息进行缺失值校验时,若缺失值校验结果指示主体信息存在缺失字段,则missing函数会返回有效埋点数据的缺失字段。
在调用redundant函数,对有效埋点数据的主体信息进行冗余校验时,若冗余校验结果指示主体信息存在冗余字段,则redundant函数会返回有效埋点数据的冗余字段。
如此一来,还可以在有效埋点数据的字段验证结果中添加有效埋点数据的缺失字段以及冗余字段。
S114:利用字段值验证规则,对有效埋点数据的主体信息所示目标字段的字段值进行验证,得到有效埋点数据的字段值验证结果。
其中,若有效埋点数据的主体信息所示目标字段的字段值,符合字段值验证规则,则确定有效埋点数据的字段值验证结果为:有效埋点数据通过字段值验证。
若有效埋点数据的主体信息所示目标字段的字段值,不符合字段值验证规则,则确定有效埋点数据的字段值验证结果为:有效埋点数据未通过字段值验证。
需要说明的是,利用字段值验证规则,对有效埋点数据的主体信息所示目标字段的字段值进行验证的具体表现逻辑可以为:
Figure BDA0003607816640000131
Figure BDA0003607816640000141
Figure BDA0003607816640000151
Figure BDA0003607816640000161
需要说明的是,上述具体表现逻辑仅仅用于举例说明。
另外,还可以调用预设的数据校验接口,来执行上述S106-S114所示的流程,具体的,数据校验接口的调用逻辑可以为:
Figure BDA0003607816640000162
需要说明的是,上述具体表现逻辑仅仅用于举例说明。
S115:基于上报条数验证结果、字段验证结果以及字段值验证结果,生成检测报告,并将检测报告发送给用户。
综上所述,利用本实施例所示方案,用户无需对应用的每个埋点数据进行人工校验,只需输入检测指令,便可实现埋点数据的自动化检测,从而有效提高埋点数据的检测效率。
需要说明的是,上述实施例提及的S101,为本申请所述埋点数据检测方法的一种可选的实现方式。此外,上述实施例提及的S115,也为本申请所述埋点数据检测方法的一种可选的实现方式。为此,上述实施例提及的流程,可以概括为图2所示的方法。
如图2所示,为本申请实施例提供的另一种埋点数据检测方法的流程示意图,包括如下步骤:
S201:在接收到用户的检测指令后,从预设的数据表中获取检测指令所示UI场景的多个埋点数据。
其中,埋点数据包括域名信息、请求方式以及主体信息。
S202:从预设的模板数据表中获取UI场景的预期模板数据,以及预期上报条数。
其中,预期模板数据包括域名信息模板、请求方式模板、目标字段以及目标字段的字段值验证规则。
S203:从各个埋点数据中,选取域名信息与域名信息模板相同的、且请求方式与请求方式模板相同、且主体信息包含有目标字段的埋点数据,作为有效埋点数据。
S204:统计有效埋点数据的数量,得到实际上报条数。
S205:将实际上报条数与预期上报条数进行比对,得到UI场景的上报条数验证结果。
S206:利用字段值验证规则,对有效埋点数据的主体信息所示目标字段的字段值进行验证,得到有效埋点数据的字段值验证结果。
S207:基于上报条数验证结果,以及字段值验证结果,生成检测报告,并将检测报告发送给用户。
综上所述,利用本实施例所示方案,用户无需对应用的每个埋点数据进行人工校验,只需输入检测指令,便可实现埋点数据的自动化检测,从而有效提高埋点数据的检测效率。
与上述本申请实施例提供的埋点数据检测方法相对应,本申请实施例还提供了一种埋点数据检测装置。
如图3所示,为本申请实施例提供的一种埋点数据检测装置的架构示意图,包括:
第一获取单元100,用于在接收到用户的检测指令后,从预设的数据表中获取检测指令所示UI场景的多个埋点数据;埋点数据包括域名信息、请求方式以及主体信息。
可选的,第一获取单元100具体用于:预先调用预设的自动化测试工具,触发终端启动预先安装的应用;控制终端绑定服务器的网络节点地址,以使应用依据预先配置的UI场景,向服务器发送大数据请求;对大数据请求进行解析,得到UI场景的一个或多个埋点数据;将UI场景的埋点数据存储到预设的数据表中;在接收到用户的检测指令后,从数据表中获取检测指令所示UI场景的多个埋点数据。
第一获取单元100还用于:删除数据表中的埋点数据。
第二获取单元200,用于从预设的模板数据表中获取UI场景的预期模板数据,以及预期上报条数;预期模板数据包括域名信息模板、请求方式模板、目标字段以及目标字段的字段值验证规则。
数据筛选单元300,用于从各个埋点数据中,选取域名信息与域名信息模板相同的、且请求方式与请求方式模板相同、且主体信息包含有目标字段的埋点数据,作为有效埋点数据。
条数统计单元400,用于统计有效埋点数据的数量,得到实际上报条数。
条数比对单元500,用于将实际上报条数与预期上报条数进行比对,得到UI场景的上报条数验证结果。
可选的,条数比对单元500具体用于:若实际上报条数与预期上报条数相同,则确定UI场景的上报条数验证结果为:有效埋点数据的上报条数符合预期;若实际上报条数与预期上报条数不相同,则确定UI场景的上报条数验证结果为:有效埋点数据的上报条数不符合预期。
字段验证单元600,用于:对于每个有效埋点数据,对有效埋点数据的主体信息进行缺失值校验,得到有效埋点数据的缺失值校验结果;对有效埋点数据的主体信息进行冗余校验,得到有效埋点数据的冗余校验结果;基于缺失值校验结果以及冗余校验结果,生成有效埋点数据的字段验证结果;其中,若缺失值校验结果指示主体信息无缺失字段、且冗余校验结果指示主体信息无冗余字段,则确定有效埋点数据的字段验证结果为:有效埋点数据通过字段验证;若缺失值校验结果指示主体信息存在缺失字段,以及冗余校验结果指示主体信息存在冗余字段,则确定有效埋点数据的字段验证结果为:有效埋点数据未通过字段验证。
字段值验证单元700,用于利用字段值验证规则,对有效埋点数据的主体信息所示目标字段的字段值进行验证,得到有效埋点数据的字段值验证结果。
可选的,字段值验证单元700具体用于:若有效埋点数据的主体信息所示目标字段的字段值,符合字段值验证规则,则确定有效埋点数据的字段值验证结果为:有效埋点数据通过字段值验证;若有效埋点数据的主体信息所示目标字段的字段值,不符合字段值验证规则,则确定有效埋点数据的字段值验证结果为:有效埋点数据未通过字段值验证。
报告生成单元800,用于基于上报条数验证结果,以及字段值验证结果,生成检测报告,并将检测报告发送给用户。
可选的,报告生成单元800具体用于:基于上报条数验证结果、字段验证结果以及字段值验证结果,生成检测报告,并将检测报告发送给用户。
综上所述,利用本实施例所示方案,用户无需对应用的每个埋点数据进行人工校验,只需输入检测指令,便可实现埋点数据的自动化检测,从而有效提高埋点数据的检测效率。
本申请还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,程序执行上述本申请提供的埋点数据检测方法。
本申请还提供了一种埋点数据检测设备,包括:处理器、存储器和总线。处理器与存储器通过总线连接,存储器用于存储程序,处理器用于运行程序,其中,程序运行时执行上述本申请提供的埋点数据检测方法,包括如下步骤:
在接收到用户的检测指令后,从预设的数据表中获取所述检测指令所示UI场景的多个埋点数据;所述埋点数据包括域名信息、请求方式以及主体信息;
从预设的模板数据表中获取所述UI场景的预期模板数据,以及预期上报条数;所述预期模板数据包括域名信息模板、请求方式模板、目标字段以及所述目标字段的字段值验证规则;
从各个所述埋点数据中,选取域名信息与所述域名信息模板相同的、且请求方式与所述请求方式模板相同、且主体信息包含有所述目标字段的埋点数据,作为有效埋点数据;
统计所述有效埋点数据的数量,得到实际上报条数;
将所述实际上报条数与所述预期上报条数进行比对,得到所述UI场景的上报条数验证结果;
利用所述字段值验证规则,对所述有效埋点数据的主体信息所示目标字段的字段值进行验证,得到所述有效埋点数据的字段值验证结果;
基于所述上报条数验证结果,以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户。
具体的,在上述实施例基础上,在接收到用户的检测指令后,从预设的数据表中获取所述检测指令所示UI场景的多个埋点数据,包括:
预先调用预设的自动化测试工具,触发终端启动预先安装的应用;
控制所述终端绑定服务器的网络节点地址,以使所述应用依据预先配置的UI场景,向所述服务器发送大数据请求;
对所述大数据请求进行解析,得到所述UI场景的一个或多个埋点数据;
将所述UI场景的埋点数据存储到预设的数据表中;
在接收到用户的检测指令后,从所述数据表中获取所述检测指令所示UI场景的多个埋点数据。
具体的,在上述实施例基础上,所述控制所述终端绑定服务器的网络节点地址,以使所述应用依据预先配置的UI场景,向所述服务器发送大数据请求之前,还包括:
删除所述数据表中的埋点数据。
具体的,在上述实施例基础上,所述将所述实际上报条数与所述预期上报条数进行比对,得到所述UI场景的上报条数验证结果,包括:
若所述实际上报条数与所述预期上报条数相同,则确定所述UI场景的上报条数验证结果为:所述有效埋点数据的上报条数符合预期;
若所述实际上报条数与所述预期上报条数不相同,则确定所述UI场景的上报条数验证结果为:所述有效埋点数据的上报条数不符合预期。
具体的,在上述实施例基础上,所述利用所述字段值验证规则,对所述有效埋点数据的主体信息所示目标字段的字段值进行验证,得到所述有效埋点数据的字段值验证结果,包括:
若所述有效埋点数据的主体信息所示目标字段的字段值,符合所述字段值验证规则,则确定所述有效埋点数据的字段值验证结果为:所述有效埋点数据通过字段值验证;
若所述有效埋点数据的主体信息所示目标字段的字段值,不符合所述字段值验证规则,则确定所述有效埋点数据的字段值验证结果为:所述有效埋点数据未通过字段值验证。
具体的,在上述实施例基础上,所述从各个所述埋点数据中,选取域名信息与所述域名信息模板相同的、且请求方式与所述请求方式模板相同、且主体信息包含有所述目标字段的埋点数据,作为有效埋点数据之后,还包括:
对于每个所述有效埋点数据,对所述有效埋点数据的主体信息进行缺失值校验,得到所述有效埋点数据的缺失值校验结果;
对所述有效埋点数据的主体信息进行冗余校验,得到所述有效埋点数据的冗余校验结果;
基于所述缺失值校验结果以及所述冗余校验结果,生成所述有效埋点数据的字段验证结果;
其中,若所述缺失值校验结果指示主体信息无缺失字段、且所述冗余校验结果指示主体信息无冗余字段,则确定所述有效埋点数据的字段验证结果为:所述有效埋点数据通过字段验证;
若所述缺失值校验结果指示主体信息存在缺失字段,以及所述冗余校验结果指示主体信息存在冗余字段,则确定所述有效埋点数据的字段验证结果为:所述有效埋点数据未通过字段验证。
具体的,在上述实施例基础上,所述基于所述上报条数验证结果,以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户,包括:
基于所述上报条数验证结果、所述字段验证结果以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种埋点数据检测方法,其特征在于,包括:
在接收到用户的检测指令后,从预设的数据表中获取所述检测指令所示UI场景的多个埋点数据;所述埋点数据包括域名信息、请求方式以及主体信息;
从预设的模板数据表中获取所述UI场景的预期模板数据,以及预期上报条数;所述预期模板数据包括域名信息模板、请求方式模板、目标字段以及所述目标字段的字段值验证规则;
从各个所述埋点数据中,选取域名信息与所述域名信息模板相同的、且请求方式与所述请求方式模板相同、且主体信息包含有所述目标字段的埋点数据,作为有效埋点数据;
统计所述有效埋点数据的数量,得到实际上报条数;
将所述实际上报条数与所述预期上报条数进行比对,得到所述UI场景的上报条数验证结果;
利用所述字段值验证规则,对所述有效埋点数据的主体信息所示目标字段的字段值进行验证,得到所述有效埋点数据的字段值验证结果;
基于所述上报条数验证结果,以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户。
2.根据权利要求1所述的方法,其特征在于,在接收到用户的检测指令后,从预设的数据表中获取所述检测指令所示UI场景的多个埋点数据,包括:
预先调用预设的自动化测试工具,触发终端启动预先安装的应用;
控制所述终端绑定服务器的网络节点地址,以使所述应用依据预先配置的UI场景,向所述服务器发送大数据请求;
对所述大数据请求进行解析,得到所述UI场景的一个或多个埋点数据;
将所述UI场景的埋点数据存储到预设的数据表中;
在接收到用户的检测指令后,从所述数据表中获取所述检测指令所示UI场景的多个埋点数据。
3.根据权利要求2所述的方法,其特征在于,所述控制所述终端绑定服务器的网络节点地址,以使所述应用依据预先配置的UI场景,向所述服务器发送大数据请求之前,还包括:
删除所述数据表中的埋点数据。
4.根据权利要求1所述的方法,其特征在于,所述将所述实际上报条数与所述预期上报条数进行比对,得到所述UI场景的上报条数验证结果,包括:
若所述实际上报条数与所述预期上报条数相同,则确定所述UI场景的上报条数验证结果为:所述有效埋点数据的上报条数符合预期;
若所述实际上报条数与所述预期上报条数不相同,则确定所述UI场景的上报条数验证结果为:所述有效埋点数据的上报条数不符合预期。
5.根据权利要求1所述的方法,其特征在于,所述利用所述字段值验证规则,对所述有效埋点数据的主体信息所示目标字段的字段值进行验证,得到所述有效埋点数据的字段值验证结果,包括:
若所述有效埋点数据的主体信息所示目标字段的字段值,符合所述字段值验证规则,则确定所述有效埋点数据的字段值验证结果为:所述有效埋点数据通过字段值验证;
若所述有效埋点数据的主体信息所示目标字段的字段值,不符合所述字段值验证规则,则确定所述有效埋点数据的字段值验证结果为:所述有效埋点数据未通过字段值验证。
6.根据权利要求1所述的方法,其特征在于,所述从各个所述埋点数据中,选取域名信息与所述域名信息模板相同的、且请求方式与所述请求方式模板相同、且主体信息包含有所述目标字段的埋点数据,作为有效埋点数据之后,还包括:
对于每个所述有效埋点数据,对所述有效埋点数据的主体信息进行缺失值校验,得到所述有效埋点数据的缺失值校验结果;
对所述有效埋点数据的主体信息进行冗余校验,得到所述有效埋点数据的冗余校验结果;
基于所述缺失值校验结果以及所述冗余校验结果,生成所述有效埋点数据的字段验证结果;
其中,若所述缺失值校验结果指示主体信息无缺失字段、且所述冗余校验结果指示主体信息无冗余字段,则确定所述有效埋点数据的字段验证结果为:所述有效埋点数据通过字段验证;
若所述缺失值校验结果指示主体信息存在缺失字段,以及所述冗余校验结果指示主体信息存在冗余字段,则确定所述有效埋点数据的字段验证结果为:所述有效埋点数据未通过字段验证。
7.根据权利要求6所述的方法,其特征在于,所述基于所述上报条数验证结果,以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户,包括:
基于所述上报条数验证结果、所述字段验证结果以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户。
8.一种埋点数据检测装置,其特征在于,包括:
第一获取单元,用于在接收到用户的检测指令后,从预设的数据表中获取所述检测指令所示UI场景的多个埋点数据;所述埋点数据包括域名信息、请求方式以及主体信息;
第二获取单元,用于从预设的模板数据表中获取所述UI场景的预期模板数据,以及预期上报条数;所述预期模板数据包括域名信息模板、请求方式模板、目标字段以及所述目标字段的字段值验证规则;
数据筛选单元,用于从各个所述埋点数据中,选取域名信息与所述域名信息模板相同的、且请求方式与所述请求方式模板相同、且主体信息包含有所述目标字段的埋点数据,作为有效埋点数据;
条数统计单元,用于统计所述有效埋点数据的数量,得到实际上报条数;
条数比对单元,用于将所述实际上报条数与所述预期上报条数进行比对,得到所述UI场景的上报条数验证结果;
字段值验证单元,用于利用所述字段值验证规则,对所述有效埋点数据的主体信息所示目标字段的字段值进行验证,得到所述有效埋点数据的字段值验证结果;
报告生成单元,用于基于所述上报条数验证结果,以及所述字段值验证结果,生成检测报告,并将所述检测报告发送给所述用户。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,所述程序执行权利要求1-7任一所述的埋点数据检测方法。
10.一种埋点数据检测设备,其特征在于,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1-7任一所述的埋点数据检测方法。
CN202210421284.6A 2022-04-21 2022-04-21 埋点数据检测方法、装置、存储介质和设备 Pending CN114756467A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210421284.6A CN114756467A (zh) 2022-04-21 2022-04-21 埋点数据检测方法、装置、存储介质和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210421284.6A CN114756467A (zh) 2022-04-21 2022-04-21 埋点数据检测方法、装置、存储介质和设备

Publications (1)

Publication Number Publication Date
CN114756467A true CN114756467A (zh) 2022-07-15

Family

ID=82331557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210421284.6A Pending CN114756467A (zh) 2022-04-21 2022-04-21 埋点数据检测方法、装置、存储介质和设备

Country Status (1)

Country Link
CN (1) CN114756467A (zh)

Similar Documents

Publication Publication Date Title
CN109104336B (zh) 服务请求处理方法、装置、计算机设备及存储介质
CN110888838B (zh) 基于对象存储的请求处理方法、装置、设备及存储介质
KR20110063313A (ko) 메시지 큐 내에서 논리적으로 연관된 메시지들의 자동화된 병합 방법
CN111163072B (zh) 机器学习模型中特征值的确定方法、装置及电子设备
CN112100071B (zh) 测试用例生成方法、装置、计算机设备和存储介质
CN112037061A (zh) 区块链中交易的处理方法、装置、电子设备及存储介质
CN111553652B (zh) 业务处理方法及装置
CN110019444B (zh) 一种操作请求处理方法、装置、设备及系统
CN111198885A (zh) 数据的处理方法及装置
CN114756467A (zh) 埋点数据检测方法、装置、存储介质和设备
CN109298928B (zh) 业务的处理方法及装置
CN111124714A (zh) 地址信息填写方法、设备及计算机可读存储介质
CN110825451A (zh) 一种小程序页面地址的配置、校验方法及装置
CN111126965A (zh) 审核规则优化方法、装置、计算机设备以及存储介质
CN115858466A (zh) 一种操作日志生成方法、装置、设备及介质
CN115599388A (zh) 一种api接口文档生成方法、存储介质及电子设备
US8973020B2 (en) Generating a web service
JP2005190221A (ja) キャッシュ制御装置およびその方法ならびにコンピュータプログラム
CN114944016A (zh) 一种电子签名的获取方法及装置
CN114065187A (zh) 异常登录检测方法、装置、计算设备及存储介质
CN112597119A (zh) 一种处理日志的生成方法、装置及存储介质
CN112508524A (zh) 一种电子审批方法、系统、装置及存储介质
CN110489130B (zh) 一种基于客户端的业务数据提取方法及装置
CN112558950A (zh) 系统接口生成方法及装置
CN112163070B (zh) 地名匹配方法、装置、电子设备及机器可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination