CN111797008B - 移动端埋点数据的自动验证方法、设备和存储介质 - Google Patents
移动端埋点数据的自动验证方法、设备和存储介质 Download PDFInfo
- Publication number
- CN111797008B CN111797008B CN202010561429.3A CN202010561429A CN111797008B CN 111797008 B CN111797008 B CN 111797008B CN 202010561429 A CN202010561429 A CN 202010561429A CN 111797008 B CN111797008 B CN 111797008B
- Authority
- CN
- China
- Prior art keywords
- test
- data
- platform
- embedded point
- mobile terminal
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000012795 verification Methods 0.000 title claims abstract description 17
- 238000012360 testing method Methods 0.000 claims abstract description 255
- 238000001514 detection method Methods 0.000 claims abstract description 19
- 238000004590 computer program Methods 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 6
- 230000006399 behavior Effects 0.000 claims description 5
- 238000001914 filtration Methods 0.000 claims description 5
- 238000004806 packaging method and process Methods 0.000 claims description 4
- 239000003795 chemical substances by application Substances 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 241000070023 Phoenicopterus roseus Species 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 235000016623 Fragaria vesca Nutrition 0.000 description 1
- 240000009088 Fragaria x ananassa Species 0.000 description 1
- 235000011363 Fragaria x ananassa Nutrition 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephone Function (AREA)
- Stored Programmes (AREA)
Abstract
本公开提供了移动端埋点数据的自动验证方法,包括:测试平台接收用户的输入的配置信息,生成测试任务;调度平台接收所述测试任务,根据所述测试任务确定执行所述测试任务的测试设备的应用类型和访问页面类型,并调用预先封装的自动化运行程序对所述测试设备进行驱动,以获取埋点测试数据;所述测试设备通过代理服务将所述埋点测试数据发送至所述调度平台;所述调度平台将所述埋点测试数据上报至测试平台;所述测试平台对所述埋点测试数据进行检测,并在检测完成后输出检测结果。以此方式,可以实现移动端埋点数据的自动化测试,提高了测试效率,节约了测试成本。
Description
技术领域
本公开的实施例一般涉及信息安全领域,并且更具体地,涉及移动端埋点数据的自动验证方法、设备和存储介质。
背景技术
埋点,是网络应用产品的一种常用的数据采集方法,主要用来采集用户行为数据,例如页面访问路径,点击了什么元素等,进行数据分析,从而给用户提供更符合其个人喜好的信息数据及系统转化趋势。
当前传统的埋点测试方法是:在终端上进行配置,连接安装在电脑上的Charles或Fiddler等抓包工具的代理服务,测试人员对终端上的应用进行一系列操作,然后通过抓包工具查看埋点请求数据,对埋点请求数据进行Json解析,人工校验埋点是否正确。校验完毕后,再手工填写测试报告。
由此可见,传统的埋点测试方法重复性高,测试方法复杂,而且过度依赖人工,这就导致了测试效率的低下,尤其是对应更新较快的应用,花费在埋点测试的成本很高。
发明内容
有鉴于此,根据本公开的实施例,提供了一种效率高成本低的埋点测试方案。
在本公开的第一方面,提供了一种移动端埋点数据的自动验证方法,包括:
测试平台接收用户的输入的配置信息,生成测试任务,其中,所述配置信息包括埋点数据配置信息、行为数据配置信息和测试用例配置信息;
调度平台接收所述测试任务,根据所述测试任务确定执行所述测试任务的测试设备的应用类型和访问页面类型,并调用预先封装的自动化运行程序对所述测试设备进行驱动,以获取埋点测试数据;
所述测试设备通过代理服务将所述埋点测试数据发送至所述调度平台;
所述调度平台将所述埋点测试数据上报至测试平台;
所述测试平台对所述埋点测试数据进行检测,并在检测完成后输出检测结果。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
所述预先封装的自动化运行程序为通过对Airtest中的poco组件和Appium框架相结合,将两者进行封装,生成的自动化运行程序。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述应用类型包括Android、iOS和小程序,所述访问页面类型包括原生页面和H5页面。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述调度平台根据所述应用类型和所述访问页面类型调用预先封装的自动化运行程序对所述测试设备进行驱动,包括:
响应于设备类型为Android的用户端,调用预先封装的自动化运行程序,通过元素名称或显示内容查找元素并点击,触发埋点请求。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述调度平台根据所述应用类型和所述访问页面类型调用预先封装的自动化运行程序对所述测试设备进行驱动,还包括:
响应于设备类型为iOS和小程序的用户端,调用预先封装的自动化运行程序,通过元素名称及图像识别匹配元素并点击,触发埋点请求。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述调度平台将所述埋点测试数据上报至测试平台,包括:
利用Web端代理工具Anyproxy获取埋点测试数据,并对所述埋点测试数据进行过滤,上报给所述调度平台。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述测试平台对所述埋点测试数据进行检测,并在检测完成后输出检测结果,包括:
所述测试平台将埋点数据配置信息与接收到的埋点测试数据进行对比,判断所述埋点数据配置信息与接收到的埋点测试数据是否相同,并在检测完成后输出对比结果。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述在检测完成后输出对比结果,包括:
在测试平台上实时展示或导出Excel文档。
在本公开的第二方面,提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
在本公开的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如以上所述的方法。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
通过本公开的实施例的移动端埋点数据的自动验证方法对移动端埋点数据进行测试,能够实现移动端埋点数据的自动化测试,提高了测试效率,节约了测试成本。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了本公开实施例一的移动端埋点数据的自动验证方法的流程图;
图2示出了本公开实施例二的移动端埋点数据的自动验证方法的交互示意图;
图3示出了本公开实施例三的移动端埋点数据的自动验证方法的一个具体实例的流程框图;
图4示出了本公开实施例四的移动端埋点数据的自动验证设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本公开的实施例中,基于Java和Python技术,使用Java作为后端服务、Python作为自动化运行服务、Kafka作为消息中间件,Anyproxy作为客户端请求代理工具。用户通过页面以指令的方式配置测试用例、选择要执行的埋点测试用例生成测试任务,启动测试后自动调度手机终端执行用例、上报埋点数据、实时验证并给出测试结果。支持Andriod、iOS和小程序三端的埋点测试。
测试平台使用Java作为后端服务、Vue作为前端展示,Mysql作为数据存储中间件。Kafka作为异步通信中间件,采用Apache公司提供的KafkaConsumer接收上报的埋点数据。通过调用调度平台接口实现用例执行。用户可以在测试平台上配置埋点信息、创建测试用例、生成测试需求、执行测试,以及实时查看测试结果。
调度服务(Flamingo Server)使用Java语言、SpringBoot框架开发。通过对Jenkins的封装提供测试用例同步执行接口,可自动分配符合条件的空闲设备执行用例并返回结果。同时接收埋点数据,在验证后采用Apache公司提供的KafkaProducer生产消息,并由测试平台消费消息。
自动化运行(Flamingo Autotest)使用Python语言开发。采用以网易公司开源的Airtest中的poco组件和JS Foundation公司开源的Appium框架相结合的方式,将两者进行封装。当要对Android设备中内嵌的Hybrid 5页面做测试时使用Appium驱动移动端操作,反之使用poco驱动。通过unitest类触发case执行,使用github上开源的BeautifulReport生成测试报告。
数据上报(Flamingo Proxy)基于阿里巴巴开源的Web端代理工作Anyproxy作为埋点数据的获取并通过规则配置过滤和处理gzip请求,将数据发给调度平台。同时基于Docker技术提供了Anyproxy镜像,在本地使用docker环境以解决远程办公无法代理问题。
具体地,如图1所示,为本公开实施例一的移动端埋点数据的自动验证方法的流程图。从图1中可以看出,本实施例的方法,可以包括以下步骤:
S101:测试平台接收用户的输入的配置信息,生成测试任务,其中,所述配置信息包括埋点数据配置信息、行为数据配置信息和测试用例配置信息。
本公开实施例的方法,用于对移动端的设备上的埋点进行自动化测试。移动端的页面(例如每日优鲜APP)上,通常会设置有多个元素,这些元素可以是商品、或者商品的信息、或者是搜索框、或者是针对商品的操作动作的按键等,其类别又可以进一步划分为图片、文字等。通过点击这些元素,可以进一步显示其他信息,例如弹出信息框、跳转页面、页面滑动或缩放等。通常情况下,通过点击这些元素进一步显示其他信息的功能通过人工编程来实现,因此,难免会存在一些由人工操作失误引起的错误,因此需要对元素的功能是否正常进行测试。
在进行测试前,用户可以在测试平台上输入配置信息,生成测试任务。其中,用户输入的配置信息包括埋点数据配置信息、行为数据配置信息和测试用例配置信息。
S102:调度平台接收所述测试任务,根据所述测试任务确定执行所述测试任务的测试设备的应用类型和访问页面类型,并调用预先封装的自动化运行程序对所述测试设备进行驱动,以获取埋点测试数据。
在本实施例中,当测试平台生成测试任务后,测试平台会将生成的测试任务下发至调度平台。调度平台根据接收到的测试任务确定执行所述测试任务的测试设备的应用类型和访问页面类型。
由于不同用户端的应用和访问页面类型通常是用不同的编程语言编写的,因此,用于自动获取访问页面类型上的埋点数据的方法也是不同的。例如,应用类型可以包括Android、iOS和小程序,因此,本实施例的方法,采用以网易公司开源的Airtest中的poco组件和JS Foundation公司开源的Appium框架相结合的方式,将两者进行封装。因此,在对用户端APP(应用)上的埋点进行测试时,需要先获取该用户端对应的应用类型,然后调用预先封装的自动化运行程序(即Airtest中的poco组件和JS Foundation公司开源的Appium框架相结合的方式封装成的自动化程序),根据所述埋点配置信息对所述当前用户端进行驱动,获取埋点测试数据。具体地,当要对应用中内嵌的Hybrid 5页面做测试时使用Appium驱动移动端操作,反之使用poco驱动。具体地,可以判定应用类型,应用类型为Android的用户端,调用预先封装的自动化运行程序,并对自动化程序下达指令,根据指令通过元素显示文本查找元素并点击,以获取埋点测试数据。应用类型为iOS和小程序的用户端,调用预先封装的自动化运行程序,通过图像识别匹配元素并点击,以获取埋点测试数据。通过对poco组件和Appium框架封装,降低了使用门槛,从而提高了本实施例方法的普遍适用性。
S103:所述测试设备通过代理服务将所述埋点测试数据发送至所述调度平台。
具体地,测试设备可以预先设置代理到代理服务的IP和端口上,当自动化运行程序对测试设备进行驱动时,所述代理服务可捕获测试设备上所有的请求,进而代理服务通过过滤获取测试设备生成的埋点测试数据,并将获取到的埋点测试数据发送至所述调度平台。
S104:所述调度平台将所述埋点测试数据上报至测试平台。
在通过调用预先封装的自动化运行程序,根据所述埋点配置信息对所述当前用户端进行驱动,获取埋点测试数据后,所述调度平台将所述埋点测试数据上报至测试平台,进而确定获取到的埋点测试数据是否存在异常。该异常例如可以是元素点击后没有反应,滑动或缩放后没有响应等。
具体地,可以采用Apache公司提供的KafkaProvider和KafkaConsumer,生产和接收埋点测试数据。实施例中,调度平台使用KafkaProvider生产埋点测试数据,测试平台使用KafkaConsumer接收上报的埋点测试数据。
S105:所述测试平台对所述埋点测试数据进行检测,并在检测完成后输出检测结果。
所述测试平台在接收到经调度平台上报的埋点测试数据后,对所述埋点测试数据进行检测,并在检测完成后输出检测结果。
本实施例的方法,能够实现移动端埋点数据的自动化测试,提高了测试效率,节约了测试成本。
如图2所示,为本公开实施例二的移动端埋点数据的自动验证方法的交互示意图。从图2中可以看出,本实施例的移动端埋点数据的自动验证方法的流程中,包括四个执行主体,分别为测试平台、调度平台、测试设备和代理服务。其中,测试平台用于接收用户的输入的配置信息,生成测试任务。并将测试任务以任务指令的形式下发至调度平台。调度平台是连接测试平台和测试设备的中转,由于测试设备有多个类别的,每个类别的测试设备对应不同的访问页面类型。因此,调度平台在接收到测试平台下发的测试任务后,首先需要根据所述测试任务确定执行所述测试任务的测试设备的应用类型和访问页面类型,然后调用预先封装的自动化运行程序对所述测试设备进行驱动,以获取埋点测试数据。测试设备预先设置代理到代理服务的IP和端口上,当自动化运行程序对测试设备进行驱动时,所述代理服务可捕获测试设备上所有的请求,进而代理服务通过过滤获取测试设备生成的埋点测试数据,并将获取到的埋点测试数据发送至所述调度平台,并由调度平台上传至测试平台。测试平台将埋点测试数据和用户的输入的配置信息中的测试用例配置信息进行对比,输出埋点测试结果。
在本实施例中,测试平台生成测试报告,在测试平台上实时展示或导出Excel文档。
本实施例的方法,能够实现移动端埋点数据的自动化测试,提高了测试效率,节约了测试成本。
作为本申请的一个可选实施例,在上述实施例中,所述将所述埋点测试数据上报给调度平台,并由所述调度平台上报至测试平台,可以具体包括:
利用Web端代理工具Anyproxy获取埋点测试数据,并对所述埋点测试数据进行过滤,上报给所述调度平台。
在本公开的上述实施例中,由于需要用户预先在测试平台上输入配置信息,进而生成测试任务并下发,测试设备才能进行后续的埋点测试,以获取埋点测试数据。因此,当需要多台设备进行埋点测试时,需要用户预先在测试平台上输入多台设备的配置信息,才能进行后续的埋点测试,在用户输入配置信息的过程中,测试设备是处于闲置状态的,这在一定程度上造成了测试资源的浪费。为此,本实施例提供一种方法,来提高测试设备的利用率,具体可以包括以下步骤:
S201:当前用户端上报埋点测试请求,所述埋点测试请求包括所述当前用户端的应用和访问页面类型和埋点配置信息。
在本实施例中,当对用户端页面上的埋点进行自动化测试时,直接由用户端上报埋点测试请求,其中,所述埋点测试请求包括所述当前用户端的设备、访问页面类型和埋点信息,所述埋点信息可进一步包括版本类型、埋点类型、埋点参数(如:商品名称)和参数值(如:草莓)等信息。
S202:根据所述应用和访问页面类型,调用预先封装的自动化运行程序,根据所述埋点配置信息对所述当前用户端进行驱动,获取埋点测试数据。
具体地,可以先判定应用类型,应用类型为Android的用户端,调用预先封装的自动化运行程序,并对自动化程序下达指令,根据指令通过元素显示文本查找元素并点击,以获取埋点测试数据。应用类型为iOS和小程序的用户端,调用预先封装的自动化运行程序,通过图像识别匹配元素并点击,以获取埋点测试数据。通过对poco组件和Appium框架封装,降低了使用门槛,从而提高了本实施例方法的普遍适用性。
S203:将所述埋点测试数据上报给调度平台,并由所述调度平台上报至测试平台。
在本实施例中,当通过调用预先封装的自动化运行程序,获取到埋点测试数据后,需要将获取到的埋点测试数据进行上报,进而确定获取到的埋点测试数据是否存在异常。具体地,采用Apache公司提供的KafkaProvider和KafkaConsumer,生产和接埋点测试数据。实施例中,调度平台使用KafkaProvider生产埋点测试数据,测试平台使用KafkaConsumer接收上报的埋点测试数据。
S204:所述测试平台对所述埋点测试数据进行缓存,并在接收到用户输入对应的配置信息后,直接对所述埋点测试数据进行检测,并在检测完成后输出检测结果。
本实施例的埋点数据的验证方法,能够有效节约测试资源,提高测试效率。
作为本公开的一个可选实施例,在上述实施例中,当测试平台接收到所述埋点测试数据后,将所述埋点测试数据与用户输入的配置信息进行对比,判断所述埋点测试数据是否存在异常,即判断预置的埋点中是否存在失效埋点,并当确定存在失效埋点后,获取所述失效埋点对应的目标埋点标识,并进一步获取所述目标埋点标识对应的埋点代码,根据所述埋点代码生成埋点测试报告,并将所述埋点测试报告推送至目标用户,从而节省测试时间,也便于进行埋点问题排查。
如图3所示,为本公开实施例三的移动端埋点数据的自动验证方法的一个具体实例的流程框图。作为本公开的一个具体实施例,测试平台接收用户的输入的配置信息,生成测试任务。并将测试任务以任务指令的形式下发至调度平台。调度平台是连接测试平台和测试设备的中转,由于测试设备有多个类别的,每个类别的测试设备对应不同的访问页面类型。因此,调度平台在接收到测试平台下发的测试任务后,首先需要根据所述测试任务确定执行所述测试任务的测试设备的应用类型和访问页面类型,然后调用预先封装的自动化运行程序对所述测试设备进行驱动,以获取埋点测试数据。用户端发送代理请求给Anyproxy,Anyproxy获取埋点测试数据,并对所述埋点测试数据进行过滤,上报给所述调度平台(FlamingoServer),并生成埋点数据消息上报给Kafka集群,由测试平台消费Kafka集群中的埋点数据消息,并在测试平台上实时展示埋点测试数据和测试结果。
本实施例的方法,能够取得与上述实施例相类似的技术效果,这里不再重复赘述。
本公开还提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
此外,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如以上所述的方法。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图4示出了本公开实施例四的移动端埋点数据的自动验证设备的结构示意图。图4示出的终端设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图4所示,计算机系统包括中央处理单元(CPU)401,其可以基于存储在只读存储器(ROM)402中的程序或者从存储部分408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM403中,还存储有系统操作所需的各种程序和数据。CPU 401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
以下部件连接至I/O接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也基于需要连接至I/O接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,基于需要安装在驱动器410上,以便于从其上读出的计算机程序基于需要被安装入存储部分408。
特别地,基于本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。在该计算机程序被中央处理单元(CPU)401执行时,执行本申请的方法中限定的上述功能。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (8)
1.一种移动端埋点数据的自动验证方法,其特征在于,包括:
测试平台接收用户的输入的配置信息,生成测试任务,其中,所述配置信息包括埋点数据配置信息、行为数据配置信息和测试用例配置信息;
调度平台接收所述测试任务,根据所述测试任务确定执行所述测试任务的测试设备的应用类型和访问页面类型,并调用预先封装的自动化运行程序对所述测试设备进行驱动,以获取埋点测试数据;其中,所述预先封装的自动化运行程序为通过对Airtest中的poco组件和Appium框架相结合,将两者进行封装,生成的自动化运行程序,所述测试设备的应用类型包括Android、iOS,所述访问页面类型包括原生页面和H5页面;
所述测试设备通过代理服务将所述埋点测试数据发送至所述调度平台;
所述调度平台将所述埋点测试数据上报至测试平台;
所述测试平台对所述埋点测试数据进行检测,并在检测完成后输出检测结果。
2.根据权利要求1所述的移动端埋点数据的自动验证方法,其特征在于,所述调度平台根据所述测试设备的应用类型和所述访问页面类型置信息调用预先封装的自动化运行程序对所述测试设备进行驱动,包括:
响应于测试设备的应用类型为Android的用户端,调用预先封装的自动化运行程序,通过元素名称或显示内容查找元素并点击,触发埋点请求。
3.根据权利要求1所述的移动端埋点数据的自动验证方法,其特征在于,所述调度平台根据所述应用类型和所述访问页面类型置信息调用预先封装的自动化运行程序对所述测试设备进行驱动,还包括:
响应于测试设备的应用类型为iOS的用户端,调用预先封装的自动化运行程序,通过元素名称及图像识别匹配元素并点击,触发埋点请求。
4.根据权利要求2或3所述的移动端埋点数据的自动验证方法,其特征在于,所述调度平台将所述埋点测试数据上报至测试平台,包括:
利用Web端代理工具Anyproxy获取埋点测试数据,并对所述埋点测试数据进行过滤,上报给所述调度平台。
5.根据权利要求4所述的移动端埋点数据的自动验证方法,其特征在于,所述测试平台对所述埋点测试数据进行检测,并在检测完成后输出检测结果,包括:
所述测试平台将埋点数据配置信息与接收到的埋点测试数据进行对比,判断所述埋点数据配置信息与接收到的埋点测试数据是否相同,并在检测完成后输出对比结果。
6.根据权利要求4所述的移动端埋点数据的自动验证方法,其特征在于,所述在检测完成后输出对比结果,包括:
在测试平台上实时展示或导出Excel文档。
7.一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~6中任一项所述的方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010561429.3A CN111797008B (zh) | 2020-06-18 | 2020-06-18 | 移动端埋点数据的自动验证方法、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010561429.3A CN111797008B (zh) | 2020-06-18 | 2020-06-18 | 移动端埋点数据的自动验证方法、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111797008A CN111797008A (zh) | 2020-10-20 |
CN111797008B true CN111797008B (zh) | 2024-05-14 |
Family
ID=72804469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010561429.3A Active CN111797008B (zh) | 2020-06-18 | 2020-06-18 | 移动端埋点数据的自动验证方法、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111797008B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114595110A (zh) * | 2020-12-03 | 2022-06-07 | 腾讯科技(深圳)有限公司 | 针对待监听事件的埋点方法、装置、介质及电子设备 |
CN113642047A (zh) * | 2021-08-13 | 2021-11-12 | 上海哔哩哔哩科技有限公司 | 埋点数据验证方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109614342A (zh) * | 2019-01-23 | 2019-04-12 | 四川虹美智能科技有限公司 | 一种应用程序自动化测试的方法及测试用例管理平台 |
CN110362480A (zh) * | 2019-06-19 | 2019-10-22 | 平安普惠企业管理有限公司 | 客户端埋点测试方法、装置、设备及存储介质 |
CN110569187A (zh) * | 2019-08-14 | 2019-12-13 | 厦门亿联网络技术股份有限公司 | 一种多平台系统应用的自动化测试方法、装置及设备 |
CN111190572A (zh) * | 2019-12-26 | 2020-05-22 | 北京五八信息技术有限公司 | 页面埋点数据的可视化方法、装置、电子设备及存储介质 |
CN111274153A (zh) * | 2020-02-14 | 2020-06-12 | 香港乐蜜有限公司 | 一种自动化测试方法、装置及电子设备 |
-
2020
- 2020-06-18 CN CN202010561429.3A patent/CN111797008B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109614342A (zh) * | 2019-01-23 | 2019-04-12 | 四川虹美智能科技有限公司 | 一种应用程序自动化测试的方法及测试用例管理平台 |
CN110362480A (zh) * | 2019-06-19 | 2019-10-22 | 平安普惠企业管理有限公司 | 客户端埋点测试方法、装置、设备及存储介质 |
CN110569187A (zh) * | 2019-08-14 | 2019-12-13 | 厦门亿联网络技术股份有限公司 | 一种多平台系统应用的自动化测试方法、装置及设备 |
CN111190572A (zh) * | 2019-12-26 | 2020-05-22 | 北京五八信息技术有限公司 | 页面埋点数据的可视化方法、装置、电子设备及存储介质 |
CN111274153A (zh) * | 2020-02-14 | 2020-06-12 | 香港乐蜜有限公司 | 一种自动化测试方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111797008A (zh) | 2020-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109302522B (zh) | 测试方法、装置以及计算机系统和介质 | |
CN111797008B (zh) | 移动端埋点数据的自动验证方法、设备和存储介质 | |
CN107045475B (zh) | 测试方法和装置 | |
CN113032244A (zh) | 接口测试方法、装置、计算机系统和计算机可读存储介质 | |
CN110798445A (zh) | 公共网关接口测试方法、装置、计算机设备及存储介质 | |
CN114564390A (zh) | 应用程序的性能测试方法、装置、设备及产品 | |
CN116662193A (zh) | 页面测试方法和装置 | |
CN115202973A (zh) | 应用运行状态的确定方法、装置、电子设备和介质 | |
CN110806967A (zh) | 一种单元测试方法和装置 | |
CN113360365B (zh) | 一种流程测试方法和流程测试系统 | |
CN113127362A (zh) | 对象测试方法、对象测试装置、电子设备及可读存储介质 | |
CN111708684B (zh) | 一种页面访问的记录方法、装置及计算机系统 | |
CN115190008B (zh) | 故障处理方法、故障处理装置、电子设备及存储介质 | |
CN114840435A (zh) | 数据流向的确定方法、装置、设备、存储介质和程序产品 | |
CN115421824B (zh) | 微服务执行引擎及运行方法、应用方法 | |
CN115292146B (zh) | 一种系统容量预估方法、系统、设备及存储介质 | |
CN117827630A (zh) | 一种测试脚本的生成方法和装置 | |
CN117472751A (zh) | 一种车辆系统功能分析方法、装置、设备及介质 | |
CN117573478A (zh) | 性能监控方法、装置、设备、介质及程序产品 | |
CN117493207A (zh) | 页面处理方法、装置、电子设备和存储介质 | |
CN116756016A (zh) | 多浏览器测试方法、装置、设备、介质及程序产品 | |
CN113986681A (zh) | 埋点数据的检测方法及装置 | |
CN116205461A (zh) | 业务系统高峰保障方法、装置、设备、介质和程序产品 | |
CN116257432A (zh) | 业务系统测试方法和装置 | |
CN115086212A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |