CN111274153A - 一种自动化测试方法、装置及电子设备 - Google Patents
一种自动化测试方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111274153A CN111274153A CN202010094982.0A CN202010094982A CN111274153A CN 111274153 A CN111274153 A CN 111274153A CN 202010094982 A CN202010094982 A CN 202010094982A CN 111274153 A CN111274153 A CN 111274153A
- Authority
- CN
- China
- Prior art keywords
- program
- tested
- interface
- testing
- user interface
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 281
- 238000000034 method Methods 0.000 claims abstract description 81
- 230000008569 process Effects 0.000 claims abstract description 39
- 230000004044 response Effects 0.000 claims abstract description 30
- 230000015654 memory Effects 0.000 claims description 47
- 238000004891 communication Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 241000282376 Panthera tigris Species 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013102 re-test Methods 0.000 description 2
- 229910052711 selenium Inorganic materials 0.000 description 2
- BUGBHKTXTAQXES-UHFFFAOYSA-N Selenium Chemical compound [Se] BUGBHKTXTAQXES-UHFFFAOYSA-N 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000011669 selenium Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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
-
- 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
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)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例公开了一种自动化测试方法。该方法包括:开始测试待测试程序,调用目标用户界面测试工具对待测试程序的用户界面进行操作;当检测到针对用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求;多个接口请求用于服务器向待测试程序返回多个响应信息,结束测试待测试程序;获取开始测试待测试程序到结束测试待测试程序过程中产生的系统性能数据;系统性能数据用于分析待测试程序的运行情况。采用本申请实施例,能够实现整个测试流程的自动化,提高测试效率。
Description
技术领域
本申请涉及测试技术领域,尤其涉及一种自动化测试方法、装置及电子设备。
背景技术
自动化测试可以分为单元层的自动化测试、集成/接口层的自动化测试和用户界面(user interface,UI)层的自动化测试。现有的自动化测试流程中,不同层次的自动化测试是独立进行的。例如,常用的UI自动化测试框架只能单方面实现对客户端的UI测试,在UI测试操作涉及到接口调用等后台逻辑时往往是通过人工执行请求接口来实现测试。从而导致人工操作繁多,测试效率低下,无法实现整个测试流程的自动化。
发明内容
本申请实施例公开了一种自动化测试方法、装置及电子设备,能够实现整个测试流程的自动化,大大提高测试效率。
第一方面,本申请实施例提供了一种自动化测试方法,包括:
开始测试待测试程序,调用目标用户界面测试工具对待测试程序的用户界面进行操作;
当检测到针对所述用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求;所述多个接口请求用于所述服务器向所述待测试程序返回多个响应信息,结束测试所述待测试程序;
获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据;所述系统性能数据用于分析所述待测试程序的运行情况。
在上述方法中,当检测到目标用户界面测试工具针对待测试程序的用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求,从而避免了繁多的人工操作,实现了整个测试流程的自动化,提高测试效率。
在第一方面的一种可选方案中,所述调用目标用户界面测试工具对待测试程序的用户界面进行操作包括:
调用多个用户界面测试工具中与所述待测试程序对应的所述目标用户界面测试工具对所述待测试程序的用户界面进行操作;
所述调用目标接口测试工具向服务器发送多个接口请求包括:
调用多个接口测试工具中与所述待测试程序对应的所述目标接口测试工具向所述服务器发送所述多个接口请求。
在上述方法中,通过与待测试程序对应的目标用户界面测试工具和目标接口测试工具完成测试过程有利于提高测试效率。
在第一方面的又一种可选方案中,所述方法还包括:
确定所述待测试程序的应用类型;
根据所述应用类型,从预设的测试工具库中选取所述目标用户界面测试工具和所述目标接口测试工具。
在上述方法中,通过根据待测试程序的应用类型选取的目标用户界面测试工具和目标接口测试工具完成测试过程有利于提高测试效率。
在第一方面的又一种可选方案中,所述获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据之后,所述方法还包括:
当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量。
在上述方法中,当获取的系统性能数据不满足预设的性能指标时,可以灵活调整多个接口请求的数量,从而达到更好的测试效果,获取更为全面的系统性能数据。
在第一方面的又一种可选方案中,所述系统性能数据包括处理器占用率;
所述当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量包括:
当所述处理器占用率小于第一预设阈值时,增加所述多个接口请求的数量;
当所述处理器占用率大于所述第一预设阈值时,减小所述多个接口请求的数量。
在上述方法中,根据处理器占用率与第一预设阈值的相对大小灵活调整多个接口请求的数量,从而达到更好的测试效果,获取更为全面的系统性能数据。在第一方面的又一种可选方案中,所述系统性能数据包括内存占用率;
所述当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量包括:
当所述内存占用率小于第二预设阈值时,增加所述多个接口请求的数量;
当所述内存占用率大于所述第二预设阈值时,减小所述多个接口请求的数量。
在上述方法中,根据内存占用率与第二预设阈值的相对大小灵活调整多个接口请求的数量,从而达到更好的测试效果,获取更为全面的系统性能数据。在第一方面的又一种可选方案中,所述方法还包括:
获取所述待测试程序的测试时长;
当所述测试时长大于第三预设阈值时,对所述待测试程序重新进行测试。
在上述方法中,当待测试程序的测试时长大于第三预设阈值时,对待测试程序重新进行测试,从而避免出现异常问题导致整个测试流程无法正常进行的情况。
第二方面,本申请实施例提供了一种自动化测试装置,包括:
第一测试单元,用于开始测试待测试程序,调用目标用户界面测试工具对待测试程序的用户界面进行操作;
第二测试单元,用于当检测到针对所述用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求;所述多个接口请求用于所述服务器向所述待测试程序返回多个响应信息,结束测试所述待测试程序;
第一获取单元,用于获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据;所述系统性能数据用于分析所述待测试程序的运行情况。
在上述装置中,当检测到目标用户界面测试工具针对待测试程序的用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求,从而避免了繁多的人工操作,实现了整个测试流程的自动化,提高测试效率。
在第二方面的一种可选方案中,所述第一测试单元,具体用于调用多个用户界面测试工具中与所述待测试程序对应的所述目标用户界面测试工具对所述待测试程序的用户界面进行操作;
所述第二测试单元,具体用于调用多个接口测试工具中与所述待测试程序对应的所述目标接口测试工具向所述服务器发送所述多个接口请求。
在上述装置中,通过与待测试程序对应的目标用户界面测试工具和目标接口测试工具完成测试过程有利于提高测试效率。
在第二方面的又一种可选方案中,所述装置还包括:
确定单元,用于确定所述待测试程序的应用类型;
选取单元,用于根据所述应用类型,从预设的测试工具库中选取所述目标用户界面测试工具和所述目标接口测试工具。
在上述装置中,通过根据待测试程序的应用类型选取的目标用户界面测试工具和目标接口测试工具完成测试过程有利于提高测试效率。
在第二方面的又一种可选方案中,所述第一获取单元,用于获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据之后,所述装置还包括:
调整单元,用于当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量。
在上述装置中,当获取的系统性能数据不满足预设的性能指标时,可以灵活调整多个接口请求的数量,从而达到更好的测试效果,获取更为全面的系统性能数据。
在第二方面的又一种可选方案中,所述系统性能数据包括处理器占用率;
所述调整单元,具体用于:
当所述处理器占用率小于第一预设阈值时,增加所述多个接口请求的数量;
当所述处理器占用率大于所述第一预设阈值时,减小所述多个接口请求的数量。
在上述装置中,根据处理器占用率与第一预设阈值的相对大小灵活调整多个接口请求的数量,从而达到更好的测试效果,获取更为全面的系统性能数据。
在第二方面的又一种可选方案中,所述系统性能数据包括内存占用率;
所述调整单元,具体用于:
当所述内存占用率小于第二预设阈值时,增加所述多个接口请求的数量;
当所述内存占用率大于所述第二预设阈值时,减小所述多个接口请求的数量。
在上述装置中,根据内存占用率与第二预设阈值的相对大小灵活调整多个接口请求的数量,从而达到更好的测试效果,获取更为全面的系统性能数据。
在第二方面的又一种可选方案中,所述装置还包括:
第二获取单元,用于获取所述待测试程序的测试时长;
第三测试单元,用于当所述测试时长大于第三预设阈值时,对所述待测试程序重新进行测试。
在上述装置中,当待测试程序的测试时长大于第三预设阈值时,对待测试程序重新进行测试,从而避免出现异常问题导致整个测试流程无法正常进行的情况。
第三方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序当被处理器执行时使该处理器实现第一方面和第一方面的可选方案所描述的方法。
第四方面,本申请实施例提供了一种计算机产品,当该计算机产品在计算机上运行时,使得该计算机执行第一方面和第一方面的可选方案所描述的方法。
通过实施本申请实施例,当检测到目标用户界面测试工具针对待测试程序的用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求,多个接口请求用于服务器向待测试程序返回多个响应信息,结束测试过程。其中,目标用户界面测试工具和目标接口测试工具是与待测试程序对应的测试工具。从而避免了繁多的人工操作,实现了整个测试流程的自动化,通过与待测试程序对应的测试工具能够更为高效的完成测试过程,大大提高了测试效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图作简单地介绍。
图1是本申请实施例提供的一种自动化测试系统的架构示意图;
图2是本申请实施例提供的一种自动化测试方法的流程示意图;
图3A是本申请实施例提供的一种自动化测试的示意图;
图3B是本申请实施例提供的又一种自动化测试的示意图;
图4是本申请实施例提供的一种自动化测试装置的结构示意图;
图5是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行描述。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,图1是本申请实施例提供的一种自动化测试系统的架构示意图。
如图1所示,该自动化测试系统可以包括终端集群、网络和服务器20。终端集群可以包括多个终端,具体包括终端10a、终端10b、终端10c、…、终端10n。终端集群中任意一个终端均可以通过网络和服务器20进行通信。
终端集群中任意一个终端可以但不限于是手机、平板电脑、笔记本电脑等设备。网络可以是在终端集群中任意一个终端和服务器20之间提供通信链路的介质,也可以是包含网络设备和传输介质的互联网,不限于此。传输介质可以是有线链路(例如但不限于,同轴电缆、光纤和数字用户线DSL等)或无线链路(例如但不限于,WIFI、蓝牙和移动设备网络等)。服务器20可以但不限于是硬件服务器、虚拟服务器、云服务器等。服务器20可以但不限于是多个服务器组成的服务器集群。
可以理解地,终端集群中任意一个终端可以安装待测试程序,服务器20可以是为该待测试程序提供服务的服务器。例如但不限于,用户使用终端10a对待测试程序的用户界面进行操作时,终端10a可以通过网络向服务器20发送对应的接口请求,服务器20返回该接口请求对应的响应信息给终端10a或所有终端,接收到响应信息的终端显示对应的用户界面。
本申请实施例的执行主体可以是上述终端集群中的任意一个终端、服务器,也可以是通过网络与上述终端集群的终端、服务器通信的其他电子设备。
请参见图2,图2是本申请实施例提供的一种自动化测试方法的流程示意图,该方法包括但不限于如下步骤。
步骤S201:电子设备开始测试待测试程序,调用目标用户界面测试工具对待测试程序的用户界面进行操作。
具体地,目标用户界面测试工具可以是现有的用户界面(user interface,UI)自动化测试框架(例如但不限于,Airtest工具、Webdriver工具、Selenium插件、Appium工具、RobotFramework等),也可以是自定义的测试工具/框架。
例如,假若待测试程序为直播应用软件(application,App),如斗鱼,虎牙等,目标用户界面测试工具为Airtest工具。如图3A所示,电子设备可以调用Airtest工具对直播App中显示直播房间列表的用户界面进行点击操作,其中,该点击操作可以作用于直播房间列表中的任意一个房间(如图3A所示的点击小黑的直播间)。
步骤S202:在检测到针对用户界面的操作时,电子设备调用目标接口测试工具向服务器发送多个接口请求。
具体地,目标接口测试工具可以是现有的接口自动化测试框架(例如但不限于,基于python开发的Requests库、基于Java开发的Jmeter工具、Postman工具、RESTClient插件等),也可以是自定义的测试工具/框架。
具体地,多个接口请求用于服务器向待测试程序返回多个响应信息,结束测试待测试程序。
例如,假若待测试程序为直播App,目标用户界面测试工具为Requests库。如图3B所示,在检测到作用于小黑的直播间的点击操作时,电子设备可以调用Requests库向服务器发送多个接口请求,多个接口请求用于服务器向安装有待测试程序的至少一个终端返回多个响应信息。安装有待测试程序的至少一个终端接收并处理多个响应信息,显示与响应信息对应的用户界面,当多个响应信息均被待测试程序处理完成时结束测试待测试程序。其中,多个接口请求为点击礼物的赠送选项的接口请求,图3B所示的用户界面为服务器基于点击爱心礼物的赠送选项的接口请求返回的响应信息对应的礼物展示界面。
不限于上述列举的情况,在具体实现中,检测到的针对用户界面的操作也可以是作用于图3B所示的用户界面中的弹幕选项的点击操作,多个接口请求为发送弹幕的接口请求,图3B所示的用户界面为服务器基于多个发送弹幕的接口请求返回的响应信息对应的弹幕列表界面。
步骤S203:电子设备获取开始测试待测试程序到结束测试待测试程序过程中产生的系统性能数据。
具体地,系统性能数据用于分析待测试程序的运行情况。系统的性能数据包括但不限于安装有待测试程序的终端或为待测试程序提供服务的服务器的中央处理器(central processing unit,CPU)占用率、内存占用率、响应时间、吞吐率等。其中,响应时间可以但不限于是终端接收并处理一个或多个响应信息的时间,或服务器基于一个或多个接口请求返回对应的一个或多个响应信息的时间。吞吐率可以但不限于是终端在单位时间内处理的响应信息的数量。
具体地,电子设备可以通过目标用户界面测试工具或目标接口测试工具(例如但不限于上述的Jmeter工具)获取系统性能数据,也可以通过其他现有的自动化测试工具(例如但不限于,NeoLoad工具、Loadster工具、LoadRunner工具等)获取系统性能数据,也可以通过自定义的测试工具/框架获取系统性能数据,本申请实施例对此不作限定。
例如,电子设备可以通过Jmeter工具获取开始测试待测试程序到结束测试待测试程序过程中终端或服务器产生的CPU占用率和内存占用率,从而分析测试过程中待测试程序的运行情况。
本申请实施例中,电子设备调用目标用户界面测试工具对待测试程序的用户界面进行操作包括:
调用多个用户界面测试工具中与待测试程序对应的目标用户界面测试工具对待测试程序的用户界面进行操作。
例如,假若电子设备可以包括待测试程序和用户界面测试工具的预设关系表,电子设备可以根据该预设关系表调用多个用户界面测试工具中与待测试程序对应的目标用户界面测试工具对待测试程序的用户界面进行操作。该预设关系表的示例如表格1所示,该预设关系表包括待测试程序应用类型和用户界面测试工具名称。
表格1
待测试程序应用类型 | 用户界面测试工具名称 |
直播 | Airtest |
游戏 | Appium |
社交软件 | Selenium |
不限于上述列举的情况,在具体实现中,上述预设关系表还可以包括用户界面测试工具所在的路径。本申请实施例对上述预设关系表的结构不做限制。
本申请实施例中,电子设备调用目标接口测试工具向服务器发送多个接口请求包括:
调用多个接口测试工具中与待测试程序对应的目标接口测试工具向服务器发送多个接口请求。
例如,假若电子设备包括待测试程序和接口测试工具的预设关系表,电子设备可以根据该预设关系表调用多个接口测试工具中与待测试程序对应的目标接口测试工具向服务器发送多个接口请求。该预设关系表的示例如表格2所示,该预设关系表包括待测试程序应用类型和接口测试工具名称。
表格2
待测试程序应用类型 | 接口测试工具名称 |
直播 | Requests |
游戏 | Jmeter |
社交软件 | Postman |
不限于上述列举的情况,在具体实现中,上述预设关系表还可以包括接口测试工具所在的路径。本申请实施例对上述预设关系表的结构不做限制。
本申请实施例中,该自动化测试方法还可以包括:
确定待测试程序的应用类型;
根据应用类型,从预设的测试工具库中选取目标用户界面测试工具和目标接口测试工具。
例如,假若预设的测试工具库包括上述列举的Airtest工具、Webdriver工具、Requests库、Postman工具。电子设备确定待测试程序的应用类型为直播类型,并可以通过经验或相关算法计算直播类型和预设的测试工具库中所有测试工具的匹配度:
直播类型和Airtest工具的匹配度为80%;
直播类型和Webdriver工具的匹配度为50%;
直播类型和Requests库的匹配度为85%;
直播类型和Postman工具的匹配度为65%;
电子设备可以根据计算得到的匹配度选择匹配度最高的Airtest工具为目标用户界面测试工具,Requests库为目标接口测试工具。
本申请实施例中,电子设备获取开始测试待测试程序到结束测试待测试程序过程中产生的系统性能数据之后,该方法还可以包括:
当系统性能数据不满足预设的性能指标时,调整多个接口请求的数量。
例如,假若系统性能数据为终端处理多个响应信息的时间,预设的性能指标为500毫秒(millisecond,ms)。若获取的系统性能数据为300ms,电子设备可以增加多个接口请求的数量,若获取的系统性能数据为800ms,电子设备可以降低多个接口请求的数量。
本申请实施例中,系统性能数据包括处理器占用率;电子设备当系统性能数据不满足预设的性能指标时,调整多个接口请求的数量包括:
当处理器占用率小于第一预设阈值时,增加多个接口请求的数量;
当处理器占用率大于第一预设阈值时,减小多个接口请求的数量。
例如,假若多个接口请求为10,第一预设阈值为90%。当获取的处理器占用率为80%时,电子设备可以增加多个接口请求的数量到15,当获取的处理器占用率为98%时,电子设备可以减小多个接口请求的数量到7。
本申请实施例中,系统性能数据包括内存占用率;电子设备当系统性能数据不满足预设的性能指标时,调整多个接口请求的数量包括:
当内存占用率小于第二预设阈值时,增加多个接口请求的数量;
当内存占用率大于第二预设阈值时,减小多个接口请求的数量。
例如,假若多个接口请求为10,第二预设阈值为95%,当获取的内存占用率为80%时,电子设备可以增加多个接口请求的数量到18,当获取的内存占用率为99%时,电子设备可以减小多个接口请求的数量到8。
本申请实施例中,该自动化测试方法还可以包括:
获取待测试程序的测试时长;
当测试时长大于第三预设阈值时,对待测试程序重新进行测试。
例如,假若第三预设阈值为1000ms,当测试时长大于1000ms时,电子设备对待测试程序重新进行测试,如重新通过目标接口测试工具向服务器发送多个接口请求。
在图2所描述的方法中,当检测到目标用户界面测试工具针对待测试程序的用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求,多个接口请求用于服务器向待测试程序返回多个响应信息,结束测试过程。从而避免了大量重复的人工操作,实现了整个测试流程的自动化,大大提高了测试效率。
上述详细阐述了本申请实施例的方法,为了便于更好地实施本申请实施例的上述方案,相应地,下面提供了本申请实施例的装置。
请参见图4,图4是本申请实施例提供的一种自动化测试装置400的结构示意图,该装置400可以包括第一测试单元401、第二测试单元402和第一获取单元403。其中,各个单元的详细描述如下。
第一测试单元401,用于开始测试待测试程序,调用目标用户界面测试工具对待测试程序的用户界面进行操作。
例如,假若待测试程序为直播App,如斗鱼,虎牙等,目标用户界面测试工具为Airtest工具。如图3A所示,第一测试单元可以调用Airtest工具对直播App中显示直播房间列表的用户界面进行点击操作,其中,该点击操作可以为作用于小黑的直播间对应的图标。
第二测试单元402,用于当检测到针对用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求;多个接口请求用于服务器向待测试程序返回多个响应信息,结束测试待测试程序。
例如,假若待测试程序为直播App,目标用户界面测试工具为Requests库。如图3B所示,在检测到作用于小黑的直播间的点击操作时,电子设备可以调用Requests库向服务器发送多个接口请求,多个接口请求用于服务器向安装有待测试程序的至少一个终端返回多个响应信息。安装有待测试程序的至少一个终端接收并处理多个响应信息,显示与响应信息对应的用户界面,当多个响应信息均被待测试程序处理完成时结束测试待测试程序。其中,多个接口请求为点击礼物的赠送选项的接口请求,图3B所示的用户界面为服务器基于点击爱心礼物的赠送选项的接口请求返回的响应信息对应的礼物展示界面。
第一获取单元403,用于获取开始测试待测试程序到结束测试待测试程序过程中产生的系统性能数据;系统性能数据用于分析待测试程序的运行情况。
例如,电子设备可以通过Jmeter工具获取开始测试待测试程序到结束测试待测试程序过程中终端或服务器产生的CPU占用率和内存占用率,从而分析测试过程中待测试程序的运行情况。
在一种可选的方案中,第一测试单元401,具体用于调用多个用户界面测试工具中与所述待测试程序对应的所述目标用户界面测试工具对所述待测试程序的用户界面进行操作;
第二测试单元402,具体用于调用多个接口测试工具中与所述待测试程序对应的所述目标接口测试工具向所述服务器发送所述多个接口请求。
例如,假若电子设备可以包括待测试程序和用户界面测试工具的预设关系表,电子设备可以根据该预设关系表调用多个用户界面测试工具中与待测试程序对应的目标用户界面测试工具对待测试程序的用户界面进行操作。其中,该预设关系表的示例可参见上述表格1。
例如,假若电子设备包括待测试程序和接口测试工具的预设关系表,电子设备可以根据该预设关系表调用多个接口测试工具中与待测试程序对应的目标接口测试工具向服务器发送多个接口请求。其中,该预设关系表的示例可参见上述表格2。
在又一种可选的方案中,装置400还可以包括:
确定单元,用于确定所述待测试程序的应用类型;
选取单元,用于根据所述应用类型,从预设的测试工具库中选取所述目标用户界面测试工具和所述目标接口测试工具。
例如,假若预设的测试工具库包括上述列举的Airtest工具、Webdriver工具、Requests库、Postman工具。电子设备确定待测试程序的应用类型为直播类型,并可以通过经验或相关算法计算直播类型和预设的测试工具库中所有测试工具的匹配度:
直播类型和Airtest工具的匹配度为80%;
直播类型和Webdriver工具的匹配度为50%;
直播类型和Requests库的匹配度为85%;
直播类型和Postman工具的匹配度为65%;
电子设备可以根据计算得到的匹配度选择匹配度最高的Airtest工具为目标用户界面测试工具,Requests库为目标接口测试工具。
在又一种可选的方案中,第一获取单元403,用于获取开始测试待测试程序到结束测试待测试程序过程中产生的系统性能数据之后,装置400还可以包括:
调整单元,用于当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量。
例如,假若系统性能数据为终端处理完成多个响应信息的时间,预设的性能指标为500ms。若获取的系统性能数据为300ms,调整单元可以增加多个接口请求的数量,若获取的系统性能数据为800ms,调整单元可以降低多个接口请求的数量。
在又一种可选的方案中,所述系统性能数据包括处理器占用率;
所述调整单元,具体用于:
当所述处理器占用率小于第一预设阈值时,增加所述多个接口请求的数量;
当所述处理器占用率大于所述第一预设阈值时,减小所述多个接口请求的数量。
例如,假若多个接口请求为10,第一预设阈值为90%。当获取的处理器占用率为80%时,调整单元可以增加多个接口请求的数量到15,当获取的处理器占用率为98%时,调整单元可以减小多个接口请求的数量到7。
在又一种可选的方案中,所述系统性能数据包括内存占用率;
所述调整单元,具体用于:
当所述内存占用率小于第二预设阈值时,增加所述多个接口请求的数量;
当所述内存占用率大于所述第二预设阈值时,减小所述多个接口请求的数量。
例如,假若多个接口请求为10,第二预设阈值为95%,当获取的内存占用率为80%时,调整单元可以增加多个接口请求的数量到18,当获取的内存占用率为99%时,调整单元可以减小多个接口请求的数量到8。
在又一种可选的方案中,装置400还可以包括:
第二获取单元,用于获取所述待测试程序的测试时长;
第三测试单元,用于当所述测试时长大于第三预设阈值时,对所述待测试程序重新进行测试。
例如,假若第三预设阈值为1000ms,当测试时长大于1000ms时,电子设备对待测试程序重新进行测试,如重新通过目标接口测试工具向服务器发送多个接口请求。
需要说明的是,在本申请实施例中,各个单元的具体实现还可以对应参照图2所示的方法实施例的相应描述。
请参见图5,图5是本申请实施例提供的一种电子设备的结构示意图。
如图5所示,该电子设备可以包括:至少一个处理器601,例如CPU,至少一个接收器603,至少一个存储器604,至少一个发送器605,至少一个通信总线602。其中,通信总线602用于实现这些组件之间的连接通信。其中,本发明实施例中电子设备的接收器603和发送器605可以是有线发送端口,也可以为无线设备,例如包括天线装置,用于与其他节点设备进行信令或数据的通信。存储器604可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器604可选的还可以是至少一个位于远离前述处理器601的存储装置。存储器604中存储计算机程序,且处理器601用于调用存储器中存储的计算机程序执行以下操作:
开始测试待测试程序,调用目标用户界面测试工具对待测试程序的用户界面进行操作;
当检测到针对所述用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求;所述多个接口请求用于所述服务器向所述待测试程序返回多个响应信息,结束测试所述待测试程序;
获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据;所述系统性能数据用于分析所述待测试程序的运行情况。
在一种可选方案中,所述调用目标用户界面测试工具对待测试程序的用户界面进行操作包括:
调用多个用户界面测试工具中与所述待测试程序对应的所述目标用户界面测试工具对所述待测试程序的用户界面进行操作;
所述调用目标接口测试工具向服务器发送多个接口请求包括:
调用多个接口测试工具中与所述待测试程序对应的所述目标接口测试工具向所述服务器发送所述多个接口请求。
在又一种可选方案中,所述方法还包括:
确定所述待测试程序的应用类型;
根据所述应用类型,从预设的测试工具库中选取所述目标用户界面测试工具和所述目标接口测试工具。
在又一种可选方案中,所述获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据之后,所述方法还包括:
当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量。
在又一种可选方案中,所述系统性能数据包括处理器占用率;
所述当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量包括:
当所述处理器占用率小于第一预设阈值时,增加所述多个接口请求的数量;
当所述处理器占用率大于所述第一预设阈值时,减小所述多个接口请求的数量。
在又一种可选方案中,所述系统性能数据包括内存占用率;
所述当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量包括:
当所述内存占用率小于第二预设阈值时,增加所述多个接口请求的数量;
当所述内存占用率大于所述第二预设阈值时,减小所述多个接口请求的数量。
在又一种可选方案中,所述方法还包括:
获取所述待测试程序的测试时长;
当所述测试时长大于第三预设阈值时,对所述待测试程序重新进行测试。
需要说明的是,在本申请实施例中,各个单元的具体实现还可以对应参照图2所示的方法实施例的相应描述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,计算机程序当被处理器执行时使处理器执行图2所示的方法实施例中所执行的操作。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在处理器上运行时执行图2所示的方法实施例中所执行的操作。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,ROM)、随机存取器(random accessmemory,RAM)、磁盘或光盘等。
以上对本申请实施例所提供的内容下载方法及相关设备、系统进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种自动化测试方法,其特征在于,包括:
开始测试待测试程序,调用目标用户界面测试工具对待测试程序的用户界面进行操作;
当检测到针对所述用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求;所述多个接口请求用于所述服务器向所述待测试程序返回多个响应信息,结束测试所述待测试程序;
获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据;所述系统性能数据用于分析所述待测试程序的运行情况。
2.如权利要求1所述的方法,其特征在于,所述调用目标用户界面测试工具对待测试程序的用户界面进行操作包括:
调用多个用户界面测试工具中与所述待测试程序对应的所述目标用户界面测试工具对所述待测试程序的用户界面进行操作;
所述调用目标接口测试工具向服务器发送多个接口请求包括:
调用多个接口测试工具中与所述待测试程序对应的所述目标接口测试工具向所述服务器发送所述多个接口请求。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述待测试程序的应用类型;
根据所述应用类型,从预设的测试工具库中选取所述目标用户界面测试工具和所述目标接口测试工具。
4.如权利要求1-3任一项所述的方法,其特征在于,所述获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据之后,所述方法还包括:
当所述系统性能数据不满足预设的性能指标时,调整所述多个接口请求的数量。
5.如权利要求4所述的方法,其特征在于,所述系统性能数据包括处理器占用率;
所述在所述系统性能数据不满足预设的性能指标的情况下,调整所述多个接口请求的数量包括:
当所述处理器占用率小于第一预设阈值时,增加所述多个接口请求的数量;
当所述处理器占用率大于所述第一预设阈值时,减小所述多个接口请求的数量。
6.如权利要求4所述的方法,其特征在于,所述系统性能数据包括内存占用率;
所述在所述系统性能数据不满足预设的性能指标的情况下,调整所述多个接口请求的数量包括:
当所述内存占用率小于第二预设阈值时,增加所述多个接口请求的数量;
当所述内存占用率大于所述第二预设阈值时,减小所述多个接口请求的数量。
7.如权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
获取所述待测试程序的测试时长;
当所述测试时长大于第三预设阈值时,对所述待测试程序重新进行测试。
8.一种自动化测试装置,其特征在于,包括:
第一测试单元,用于开始测试待测试程序,调用目标用户界面测试工具对待测试程序的用户界面进行操作;
第二测试单元,用于当检测到针对所述用户界面的操作时,调用目标接口测试工具向服务器发送多个接口请求;所述多个接口请求用于所述服务器向所述待测试程序返回多个响应信息,结束测试所述待测试程序;
第一获取单元,用于获取开始测试所述待测试程序到结束测试所述待测试程序过程中产生的系统性能数据;所述系统性能数据用于分析所述待测试程序的运行情况。
9.一种电子设备,其特征在于,包括:处理器、存储器、通信接口和总线;所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;所述存储器存储计算机程序;所述处理器通过执行所述存储器中存储的计算机程序实现权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器实现权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010094982.0A CN111274153A (zh) | 2020-02-14 | 2020-02-14 | 一种自动化测试方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010094982.0A CN111274153A (zh) | 2020-02-14 | 2020-02-14 | 一种自动化测试方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111274153A true CN111274153A (zh) | 2020-06-12 |
Family
ID=71003613
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010094982.0A Pending CN111274153A (zh) | 2020-02-14 | 2020-02-14 | 一种自动化测试方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111274153A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111797008A (zh) * | 2020-06-18 | 2020-10-20 | 北京每日优鲜电子商务有限公司 | 移动端埋点数据的自动验证方法、设备和存储介质 |
CN111857702A (zh) * | 2020-07-23 | 2020-10-30 | 上海中通吉网络技术有限公司 | 实现webdriver json协议UI自动化的方法、装置及设备 |
CN113377664A (zh) * | 2021-06-25 | 2021-09-10 | 上海商汤科技开发有限公司 | 模型测试方法及装置、电子设备和存储介质 |
CN113778845A (zh) * | 2020-11-17 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 一种系统测试方法和装置 |
CN114492861A (zh) * | 2021-12-31 | 2022-05-13 | 北京航天测控技术有限公司 | 一种测试数据的采集和解析方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2011100465A4 (en) * | 2011-04-25 | 2011-06-02 | Nitin Parashari | Method and system for universal test scripting software |
CN106970870A (zh) * | 2016-01-14 | 2017-07-21 | 腾讯科技(北京)有限公司 | 网页测试平台、网页测试方法和网页测试系统 |
CN108549606A (zh) * | 2018-04-16 | 2018-09-18 | 成都医云科技有限公司 | 接口测试方法及装置 |
CN109766258A (zh) * | 2018-11-30 | 2019-05-17 | 北京奇艺世纪科技有限公司 | 一种性能测试方法、装置及计算机可读存储介质 |
CN109857628A (zh) * | 2017-11-30 | 2019-06-07 | 北京高德云图科技有限公司 | 动态ui业务端代码性能检测方法及装置 |
CN110532169A (zh) * | 2019-07-08 | 2019-12-03 | 平安科技(深圳)有限公司 | 接口测试用例生成方法、装置、计算机设备及存储介质 |
-
2020
- 2020-02-14 CN CN202010094982.0A patent/CN111274153A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2011100465A4 (en) * | 2011-04-25 | 2011-06-02 | Nitin Parashari | Method and system for universal test scripting software |
CN106970870A (zh) * | 2016-01-14 | 2017-07-21 | 腾讯科技(北京)有限公司 | 网页测试平台、网页测试方法和网页测试系统 |
CN109857628A (zh) * | 2017-11-30 | 2019-06-07 | 北京高德云图科技有限公司 | 动态ui业务端代码性能检测方法及装置 |
CN108549606A (zh) * | 2018-04-16 | 2018-09-18 | 成都医云科技有限公司 | 接口测试方法及装置 |
CN109766258A (zh) * | 2018-11-30 | 2019-05-17 | 北京奇艺世纪科技有限公司 | 一种性能测试方法、装置及计算机可读存储介质 |
CN110532169A (zh) * | 2019-07-08 | 2019-12-03 | 平安科技(深圳)有限公司 | 接口测试用例生成方法、装置、计算机设备及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111797008A (zh) * | 2020-06-18 | 2020-10-20 | 北京每日优鲜电子商务有限公司 | 移动端埋点数据的自动验证方法、设备和存储介质 |
CN111797008B (zh) * | 2020-06-18 | 2024-05-14 | 北京每日优鲜电子商务有限公司 | 移动端埋点数据的自动验证方法、设备和存储介质 |
CN111857702A (zh) * | 2020-07-23 | 2020-10-30 | 上海中通吉网络技术有限公司 | 实现webdriver json协议UI自动化的方法、装置及设备 |
CN113778845A (zh) * | 2020-11-17 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 一种系统测试方法和装置 |
CN113377664A (zh) * | 2021-06-25 | 2021-09-10 | 上海商汤科技开发有限公司 | 模型测试方法及装置、电子设备和存储介质 |
CN114492861A (zh) * | 2021-12-31 | 2022-05-13 | 北京航天测控技术有限公司 | 一种测试数据的采集和解析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111274153A (zh) | 一种自动化测试方法、装置及电子设备 | |
CN105682077B (zh) | 一种虚拟sim卡切换方法及装置 | |
CN106777229B (zh) | 一种个性化推荐实时性测试方法、装置及电子设备 | |
EP2098043A2 (en) | Apparatus and methods of providing and presenting representations of communication events on a map | |
CN109002424B (zh) | 文件格式转换方法、装置、计算机设备及存储介质 | |
CN108628732B (zh) | 一种应用界面控件遍历测试方法及装置 | |
CN109041267B (zh) | 一种网络连接故障处理方法、装置及电子设备 | |
CN111124911A (zh) | 一种自动化测试方法、装置、设备及可读存储介质 | |
CN111176918A (zh) | 一种服务器测试方法、系统、设备及计算机可读存储介质 | |
CN108519935B (zh) | 板卡测试方法、装置、可读存储介质及计算机设备 | |
CN111431772B (zh) | 网络延迟测量方法、系统、可读存储介质及终端设备 | |
CN106294114A (zh) | 一种代码覆盖率获取方法、服务器及待测应用装置 | |
CN112953791A (zh) | 网络探测方法、装置、电子设备及计算机可读存储介质 | |
CN112835802A (zh) | 一种设备测试方法、装置、设备及存储介质 | |
CN111061448A (zh) | 日志信息的显示方法、装置、电子设备及存储介质 | |
CN108093036A (zh) | 一种获取资源的方法及装置 | |
CN111176985B (zh) | 软件接口的性能测试方法及装置、计算机设备、存储介质 | |
CN112437462A (zh) | Wifi模块的质量确定方法及装置、存储介质及电子装置 | |
CN116133089A (zh) | 一种设备通信方法、装置、电子设备及存储介质 | |
CN111880996B (zh) | 一种裸机数据采集方法、装置、设备及可读存储介质 | |
CN114676043A (zh) | 智能语音模组的测试方法和装置、存储介质及电子装置 | |
CN112650666B (zh) | 一种软件测试系统、方法、装置、控制设备及存储介质 | |
CN113138935A (zh) | 程序测试的方法、装置、电子设备和存储介质 | |
CN114710801A (zh) | 网络性能的测评参数的处理方法、装置、存储介质及设备 | |
CN110737598A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210608 Address after: 25, 5th floor, shuangjingfang office building, 3 frisha street, Singapore Applicant after: Zhuomi Private Ltd. Address before: Room 1101, Santai Commercial Building, 139 Connaught Road, Hong Kong, China Applicant before: HONG KONG LIVE.ME Corp.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200612 |