一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种埋点测试方法和系统与流程

2022-11-19 18:38:31 来源:中国专利 TAG:


1.本发明涉及数据采集领域,具体涉及一种埋点测试方法和系统。


背景技术:

2.所谓“埋点”,是数据采集领域(尤其是用户行为数据采集领域)的术语,指的是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。比如用户某个icon点击次数、观看某个视频的时长等等。埋点的技术实质,是先监听软件应用运行过程中的事件,当需要关注的事件发生时进行判断和捕获。而埋点测试,则是测试人员测试软件中的埋点代码是否正确部署。
3.目前,测试人员进行埋点测试时,需要在安装了应用程序的终端上手动触发埋点,再到服务器后台去看数据,判断该埋点是否可以正确统计用户的触发操作。但是这种测试方法流程较长,效率低下。并且后台数据会有滞后情况,不能及时验证触发埋点的正确性,难以对埋点逻辑的正确性进行测试。
4.针对这一问题,专利文件cn112148606a提出了一种埋点测试工具,将埋点测试工具安装在已经具有应用程序的终端设备上(例如手机),当测试人员需要测试应用程序的埋点时,只需在终端上打开埋点测试工具,然后在应用程序中触发埋点,埋点测试工具则会利用校验规则实时检测触发的埋点,并将埋点数据直接展示在终端屏幕上,从而提高了应用程序的埋点测试效率。但是,现有软件开发流程通常版本迭代较快,而不同版本通常只有部分埋点会有新增和修改,但是现有技术对每个版本进行埋点测试时均需进行全量的测试,严重降低了测试效率。


技术实现要素:

5.有鉴于此,本发明实施方式提供了一种埋点测试方法和系统,从而进一步提高了埋点测试效率。
6.根据第一方面,本发明实施例提供了一种埋点测试方法,应用于埋点测试工具,所述埋点测试工具安装在终端设备上,所述终端设备部署有待测试的应用程序,所述方法包括:发送所述应用程序的版本信息到配置平台;接收所述配置平台返回的目标埋点信息,所述目标埋点信息是所述配置平台基于所述版本信息从预先配置的多版本埋点信息中提取的埋点信息,所述目标埋点信息记录了所述应用程序在所述版本信息对应的版本中新增和修改的埋点数据;基于所述目标埋点信息进行埋点测试,并展示埋点测试结果。
7.可选地,所述发送所述应用程序的版本信息到配置平台,包括:当所述埋点测试工具开启时,接收输入的所述应用程序的测试版本号,所述测试版本号是所述应用程序当前版本和历史版本的其中一个版本对应的版本号;将所述测试版本号作为所述版本信息发送至所述配置平台。
8.可选地,所述基于所述目标埋点信息进行埋点测试,并展示埋点测试结果,包括:触发所述目标埋点信息中的埋点,并拦截触发结果;利用本地校验规则对所述触发结果进
行校验,得到本地校验结果;将所述触发结果发送至埋点统计分析平台,以使埋点统计分析平台对所述触发结果进行落库和二次规则校验,所述埋点统计分析平台用于保存埋点测试数据;接收所述埋点统计分析平台返回的落库结果和二次规则校验结果;分别将所述本地校验结果、所述落库结果和所述二次规则校验结果作为测试结果进行展示。
9.可选地,所述利用本地校验规则对所述触发结果进行校验,包括:根据触发结果校验所述目标埋点信息中是否存在触发次数为零的埋点;校验所述触发结果中各个埋点的事件名称和属性名称是否与所述目标埋点信息中对应的事件名称和属性名称一致;校验所述触发结果中各个埋点的属性值是否落在所述目标埋点信息中对应的属性值范围内。
10.可选地,所述方法还包括:若在预设时间段内,没有接收到所述埋点统计分析平台返回的落库结果和二次规则校验结果,则展示落库失败信息,以提示用户继续等待或强制结束测试。
11.可选地,所述触发结果通过aop技术获取。
12.根据第二方面,本发明实施例提供了一种埋点测试方法,应用于配置平台,所述方法包括:接收终端设备通过埋点测试工具发送的版本信息,所述终端设备上安装了待测试的应用程序,所述版本信息是所述应用程序的版本信息;基于所述版本信息从预先配置的多版本埋点信息中提取目标埋点信息,所述目标埋点信息记录了所述应用程序在所述版本信息对应的版本中新增和修改的埋点数据;将所述目标埋点信息发送至所述终端设备,以使所述终端设备通过所述埋点测试工具基于所述目标埋点信息进行埋点测试,并展示埋点测试结果。
13.可选地,配置埋点信息的步骤包括:创建埋点信息文件,并在所述埋点信息文件中添加应用程序在当前版本新增埋点和修改埋点的埋点事件名称、属性名称和属性值范围;在所述埋点信息文件中添加当前版本新增埋点和修改埋点的功能描述;将所述埋点信息文件与当前版本的版本号关联,得到当前版本的埋点信息。
14.可选地,所述方法还包括:针对所述配置平台的各个用户,分别配置使用权限。
15.根据第三方面,本发明实施例提供了一种埋点测试系统,所述系统包括终端设备和配置平台,所述终端设备上安装有埋点测试工具和待测试的应用程序,其中:所述终端设备通过所述埋点测试工具发送所述应用程序的版本信息到配置平台;所述配置平台接收所述版本信息,并基于所述版本信息从预先配置的多版本埋点信息中提取目标埋点信息,所述目标埋点信息记录了所述应用程序在所述版本信息对应的版本中新增和修改的埋点数据;所述配置平台将所述目标埋点信息发送至所述终端设备;所述终端设备通过所述埋点测试工具基于所述目标埋点信息进行埋点测试,并展示埋点测试结果。
16.本技术提供的技术方案,具有如下优点:
17.本技术提供的技术方案,设有配置平台,应用程序开发人员在每个版本开发完成之后,均会在配置平台上对当前版本的新增埋点和修改埋点进行记录,在配置平台上配置应用程序各个版本的埋点信息。当测试用户需要对终端设备上的应用程序进行埋点测试时,启动安装在终端设备上的埋点测试工具,并通过埋点测试工具发送应用程序的版本信息到配置平台,从而接收配置平台返回的与版本信息对应的目标埋点信息,通过目标埋点信息告知用户对应的新增埋点和修改埋点,从而使用户在终端设备上通过目标埋点信息针对新增埋点和修改埋点进行埋点测试,然后针对性的展示测试结果。使得用户无需每次进
行埋点测试时,均进行全量的测试,进一步提高了埋点测试效率。
附图说明
18.通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
19.图1示出了本发明一个实施方式中一种埋点测试系统的结构示意图;
20.图2示出了本发明一个实施方式中一种埋点测试方法的步骤示意图;
21.图3示出了本发明一个实施方式中一种埋点测试系统的平台交互示意图;
22.图4示出了本发明一个实施方式中一种埋点测试方法的流程示意图。
具体实施方式
23.为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
24.请参阅图1,在一个实施方式中,一种埋点测试系统,包括终端设备1和配置平台2,终端设备1上安装有埋点测试工具和待测试的应用程序,其中:
25.终端设备1通过埋点测试工具发送应用程序的版本信息到配置平台2;
26.配置平台2接收版本信息,并基于版本信息从预先配置的多版本埋点信息中提取目标埋点信息,目标埋点信息记录了应用程序在版本信息对应的版本中新增和修改的埋点数据;
27.配置平台2将目标埋点信息发送至终端设备1;
28.终端设备1通过埋点测试工具基于目标埋点信息进行埋点测试,并展示埋点测试结果。
29.具体地,在本实施例中,通过服务器设备预先设置一个配置平台,用于配置应用程序各个版本的埋点信息,主要针对各个应用程序版本对应新增和修改的埋点。当用户需要对应用程序进行埋点测试时,只需在终端设备上开启埋点测试工具,并通过埋点测试工具发送应用程序的版本信息到配置平台,配置平台会根据接收到的版本信息从众多版本的埋点信息中提取当前版本信息对应的目标埋点信息。从而提示用户在终端设备的应用程序中触发目标埋点信息中记录的埋点,或者直接通知埋点测试工具自动在应用程序中触发目标埋点信息中记录的埋点,从而根据埋点的触发完成埋点测试,每当埋点出现问题时,终端设备通过埋点测试工具将测试结果展示在终端设备的屏幕上,使测试人员及时获知问题。基于上述埋点测试系统,使用户在终端设备上通过应用程序各个版本的埋点信息针对新增埋点和修改埋点对各个应用程序版本进行针对性埋点测试,然后针对性的展示测试结果。使得用户无需每次进行埋点测试时,均进行全量的测试,进一步提高了埋点测试效率。
30.具体地,如图2所示,本发明实施例还提供了一种埋点测试方法,其中步骤s101至步骤s103应用于上述终端设备,具体而言应是运行在终端设备安装的埋点测试工具中,步骤s201至步骤s203应用于上述配置平台,具体步骤如下:
31.步骤s101:通过埋点测试工具发送应用程序的版本信息到配置平台。
32.步骤s201:接收终端设备通过埋点测试工具发送的版本信息。
33.步骤s202:基于版本信息从预先配置的多版本埋点信息中提取目标埋点信息,目标埋点信息记录了应用程序在版本信息对应的版本中新增和修改的埋点数据。
34.步骤s203:将目标埋点信息发送至终端设备。
35.步骤s102:接收配置平台返回的目标埋点信息。
36.步骤s103:基于目标埋点信息进行埋点测试,并展示埋点测试结果。
37.具体地,本实施例的原理描述参考上述系统实施例的相关描述,在此不再赘述。
38.具体地,在一实施例中,上述步骤s101,具体包括如下步骤:
39.步骤一:当埋点测试工具开启时,接收输入的应用程序的测试版本号,测试版本号是应用程序当前版本和历史版本的其中一个版本对应的版本号。
40.步骤二:通过埋点测试工具将测试版本号作为版本信息发送至配置平台。
41.具体地,在本实施例中,当应用程序的功能和应用程序中的埋点代码开发完毕后,应用程序上线进入测试环境。当测试人员需要进行埋点测试时,在应用程序中开启埋点测试工具,并开放版本号输入接口。由于一个应用程序所包含的埋点,是全量埋点,即除了当前版本的埋点外,应用程序还会包含历史各版本的埋点,因此本发明实施例通过版本号的机制支持用户输入应用程序的测试版本号,使用户在当前版本的应用程序上除了测试当前版本的埋点外,还可以测试任意历史版本的埋点。然后终端设备通过埋点测试工具将测试版本号作为版本信息发送至配置平台,使配置平台根据接收的版本号,返回对应的埋点信息。换言之,假设应用程序的当前版本为2.1.2,若用户想要测试应用程序在历史版本2.0.5的新增和修改埋点情况,同样可以根据版本2.0.5的埋点信息在版本为2.1.2的应用程序上测试,而不会局限于仅测试2.1.2版本的新增埋点,从而进一步提高了本发明实施例提供的多版本埋点测试方案的实用性。
42.另外,在本实施例中,如果配置平台中没有配置用户所需对应版本的埋点信息,则反馈给终端设备全量埋点信息,使用户还可以在终端设备上进行全量埋点测试。
43.具体地,在一实施例中,上述步骤s103,具体包括如下步骤:
44.步骤三:触发目标埋点信息中的埋点,并拦截触发结果。
45.步骤四:利用本地校验规则对触发结果进行校验,得到本地校验结果。
46.步骤五:将触发结果发送至埋点统计分析平台,以使埋点统计分析平台对触发结果进行落库和二次规则校验,埋点统计分析平台用于保存埋点测试数据。
47.步骤六:接收埋点统计分析平台返回的落库结果和二次规则校验结果。
48.步骤七:分别将本地校验结果、落库结果和二次规则校验结果作为测试结果进行展示。
49.具体地,当终端设备接收到目标埋点信息后,可以通过展示目标埋点信息,提示用户在应用程序中手动触发目标埋点信息中的埋点,从而使埋点测试工具根据用户的触发指令触发目标埋点信息中的埋点,或者直接使埋点测试工具自动触发目标埋点信息中的埋点。然后通过本地校验规则对触发结果进行校验。在本实施例中,本地校验步骤具体如下:
50.1.根据触发结果校验目标埋点信息中是否存在触发次数为零的埋点。具体地,通过分析触发结果,判断目标埋点信息中的各个埋点事件是否均被触发,即是否存在某个埋
点事件没有被触发,从而触发结果中某个埋点的触发次数为零。针对此类情况,判定当前校验的应用程序版本存在漏埋的问题。
51.2.校验触发结果中各个埋点的事件名称和属性名称是否与目标埋点信息中对应的事件名称和属性名称一致。具体地,目标埋点信息是用户在配置平台中根据测试需求配置的埋点基本信息,因此,如果开发人员在应用程序中添加的埋点代码与测试需求不一致,也会导致埋点数据无法被正确统计,因此本实施还校验触发结果中各个埋点的事件名称、属性名称与目标埋点信息中对应的事件名称、属性名称是否一致,从而判定埋点是否存在问题。
52.3.校验触发结果中各个埋点的属性值是否落在目标埋点信息中对应的属性值范围内。具体地,本实施例除事件名称和属性名称外,还对属性值进行校验,若触发结果中埋点的属性值超出了埋点信息配置的属性值的范围,也认为埋点存在问题。
53.例如:属性是key-value结构,事件名称代表key;属性值可以是连续范围也可以是枚举范围,表示value在哪个范围内。假设a页面浏览埋点,埋点事件为aimp(对应事件名称),对应属性名称是chennel表示渠道,现有渠道只有1和2两种情况。测试时,如果触发了该埋点aimp,并且属性chennel是1或2,说明该埋点没问题,否则该埋点有问题,需要研发修复。对于有问题的埋点,以小窗、报告或日志的形式进行实时展示,有问题的数据会标记颜色或高亮,支持快速定位问题埋点。
54.如图3所示,本实施例除了通过上述步骤1~3在本地终端准确校验各个埋点外,在远端服务器还设有埋点统计分析平台,通常埋点测试人员测试得到了埋点数据,为了提高企业一系列效能指标,还需要数据分析人员进行后续的数据分析。因此,通过设置埋点统计分析平台对埋点数据进行留存,便于数据分析人员进行数据分析,进而本实施例还设置了远端落库校验步骤,终端设备将触发结果发送至埋点统计分析平台,根据埋点统计分析平台返回的落库结果(落库“成功”或“失败”)来校验触发结果是否留档成功。假设在网络异常情况下,app触发埋点的时机和逻辑是正确的,但没落到远端的数据库中,这种异常情况会导致后续无法做数据分析。假设终端设备发送了的触发结果中包含10条埋点数据,但是埋点统计分析平台返回的落库结果显示只有9条落库成功,同样会导致后续无法做数据分析,所以测试时另外添加了校验落库这一步骤的正确性。触发结果发送到埋点统计分析平台后,还会进行二次规则校验,埋点统计分析平台进行的二次规则校验与终端设备基于本地校验规则进行的校验相同,是为了进一步保证埋点数据的正确性。在测试结束时,埋点测试工具同时将落库结果和二次规则校验结果进行展示。使测试人员根据展示的结果综合分析埋点代码、通信网络的问题,准确解决导致埋点不能被正确触发的问题。
55.具体地,在本实施例中,终端设备中执行的埋点测试方法还包括如下步骤:
56.步骤八:若在预设时间段内,没有接收到埋点统计分析平台返回的落库结果和二次规则校验结果,则展示落库失败信息,以提示用户继续等待或强制结束测试。
57.具体地,在本实施例中,本地校验结束后,终端设备通过埋点测试工具将触发结果发送至埋点统计分析平台进行远端落库,如果在预设时间段内埋点统计分析平台一直未返回落库结果,则大概率表征由于网络通信问题导致了落库失败,从而埋点测试工具弹窗提示失败信息,并弹窗提示是否强制结束测试,使用户可以选择继续等待埋点统计分析平台返回落库结果,或者用户选择强制结束本次测试,重新进行一次测试,以提高用户使用埋点
测试工具的使用体验。
58.具体地,在一实施例中,对于用户触发埋点生成的触发结果,埋点测试工具通过aop技术拦截。通过aop(aspect oriented programming面向切面编程)技术获取埋点日志,无侵入获取应用程序本地触发的埋点信息,不侵入应用程序的逻辑,提高应用程序代码的安全性。在本实施例中,埋点日志包括版本埋点日志和全量埋点日志。版本埋点日志是在配置平台上配置的指定版本的埋点信息;全量埋点日志是app触发的所有埋点。
59.具体地,对上述步骤的整体过程进一步举例说明:
60.如图4所示,用户在测试时打开app,开启埋点测试工具的检测功能,并且输入要测试的埋点版本号,从配置平台拉取目标埋点信息到埋点测试工具内。然后用户根据业务流程进行测试,触发页面浏览以及元素,点击目标埋点信息对应的埋点,通过埋点测试工具记录触发结果并进行实时本地校验,校验的情况会通过小窗形式实时展示出来,校验存在问题会爆红提示,使测试可以及时发现问题。埋点结束时,埋点测试工具会触发远端校验的功能,检测指定版本触发结果的落库情况,落库失败埋点测试工具及时弹窗提示。
61.具体地,在一实施例中,本发明实施例提供的埋点测试方法,在配置平台配置埋点信息的步骤包括:
62.步骤九:创建埋点信息文件,并在埋点信息文件中添加应用程序在当前版本新增埋点和修改埋点的埋点事件名称、属性名称和属性值范围。
63.步骤十:在埋点信息文件中添加当前版本新增埋点和修改埋点的功能描述。
64.步骤十一:将埋点信息文件与当前版本的版本号关联,得到当前版本的埋点信息。
65.具体地,通过设置埋点配置平台,针对每次需求的新增版本,添加需要测试的埋点信息,主要针对新增埋点和修改埋点,包括埋点事件名称、属性名称、属性值的范围或枚举(例如数字类型在0-10范围内,字符串类型包含“a”、”b”、”c”三种情况)。每个版本的埋点信息独立创建埋点信息文件,并与对应版本号关联,维护对应的埋点信息。另外,埋点信息文件中还添加埋点功能描述,以辅助用户正确操作触发埋点。
66.同时,在本实施例中,针对配置平台的各个用户,分别配置使用权限,例如只读、可修改权限,提高配置平台的安全性。
67.通过上述步骤,本技术提供的技术方案,设有配置平台,应用程序开发人员在每个版本开发完成之后,均会在配置平台上对当前版本的新增埋点和修改埋点进行记录,在配置平台上配置应用程序各个版本的埋点信息。当测试用户需要对终端设备上的应用程序进行埋点测试时,同时启动安装在终端设备上的埋点测试工具,并通过埋点测试工具发送应用程序的版本信息到配置平台,从而接收配置平台返回的与版本信息对应的目标埋点信息,通过目标埋点信息告知用户版本信息对应的新增埋点和修改埋点,从而使用户在终端设备上通过目标埋点信息针对新增埋点和修改埋点进行埋点测试,然后针对性的展示测试结果。使得用户无需每次进行埋点测试时,均进行全量的测试,进一步提高了埋点测试效率。
68.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献