CN114253841A - 测试脚本生成方法、装置及存储介质 - Google Patents
测试脚本生成方法、装置及存储介质 Download PDFInfo
- Publication number
- CN114253841A CN114253841A CN202111458567.XA CN202111458567A CN114253841A CN 114253841 A CN114253841 A CN 114253841A CN 202111458567 A CN202111458567 A CN 202111458567A CN 114253841 A CN114253841 A CN 114253841A
- Authority
- CN
- China
- Prior art keywords
- tested
- floating window
- test script
- user
- page
- 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 122
- 238000013515 script Methods 0.000 title claims abstract description 105
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000007667 floating Methods 0.000 claims abstract description 144
- 239000000725 suspension Substances 0.000 claims description 6
- 230000004044 response Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 241000282693 Cercopithecidae Species 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013522 software testing 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/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3414—Workload generation, e.g. scripts, playback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及测试脚本生成方法、装置及存储介质,其中,所述方法包括:响应于用户开启待测试应用程序的待测试页面的操作,在显示的待测试应用程序的待测试页面上一并显示悬浮窗按钮;响应于用户针对所述悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖所述待测试页面;获取用户在所述半透明悬浮窗口上的手势操作数据,并进行记录;响应于用户针对所述悬浮窗按钮的第二类型操作,根据记录的所述手势操作数据生成针对所述待测试页面的测试脚本,并进行存储。本申请实施例能够高效地生成待测试应用程序的测试脚本,从而提高效率。
Description
技术领域
本发明涉及软件测试技术领域,尤其涉及一种测试脚本生成方法、装置及存储介质。
背景技术
目前,在移动端应用程序的开发过程中,常常要对应用程序进行各种测试。其例,在Android系统中,就提供了一种Monkey的命令行工具,它可以在模拟器或实际移动设备中运行,向被测系统发送模拟用户点击、拖动、长按等操作的事件流,以实现对正在开发过程中的应用程序进行压力测试,从而快速测试应用程序的稳定性和健壮性。
由于Monkey等工具需要测试人员拥有一定的编程基础,才可以熟练地进行测试代码地录入,因此其对编程基础不高的人员,测试脚本的生成效率就比较低,由此对编程基础不高的测试人员或普通用户就不够友好。
发明内容
本发明实施例提供测试脚本生成方法、装置及存储介质,能够高效地生成待测试应用程序的测试脚本,从而提高效率。
第一方面,本申请提供一种测试脚本生成方法,所述方法包括:
响应于用户开启待测试应用程序的待测试页面的操作,在终端显示的待测试页面上一并显示悬浮窗按钮;
响应于用户针对所述悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖所述待测试页面;
获取用户在所述半透明悬浮窗口上的手势操作数据,并进行记录;
响应于用户针对所述悬浮窗按钮的第二类型操作,根据记录的所述手势操作数据生成针对所述待测试页面的测试脚本,并进行存储。
结合第一方面,在一种可行的实现方式中,所述方法还包括:预先使所述悬浮窗按钮悬浮显示于所述终端的界面上。
结合第一方面,在一种可行的实现方式中,所述获取用户在所述半透明悬浮窗口上的手势操作数据的步骤,包括:
在开启所述半透明悬浮窗口后,将所述半透明悬浮窗口设置为获取焦点状态,检测并接收用户在所述半透明悬浮窗口上输入的手势操作数据,以及获取所述手势操作对应的事件类型、操作位置、操作起始和终止时间,并进行记录;
当检测到用户在所述半透明悬浮窗口输入的手势操作终止时,将所述半透明悬浮窗口设置为不获取焦点状态,同时将所述待测试页面设置为获取焦点状态,将所述手势操作数据透传至所述待测试页面;
重新将所述半透明悬浮窗口设置为获取焦点状态。
结合第一方面,在一种可行的实现方式中,所述根据记录的所述手势操作数据生成针对所述待测试页面的测试脚本的步骤,包括:
根据记录的手势操作数据生成Json格式的测试脚本。
结合第一方面,在一种可行的实现方式中,所述方法还包括:将生成的所述测试脚本与所述待测试应用程序的至少一种属性进行关联存储。
结合第一方面,在一种可行的实现方式中,所述至少一种属性包括所述待测试应用程序的应用程序名或程序版本号。
结合第一方面,在一种可行的实现方式中,所述方法还包括:
响应于用户针对所述悬浮窗按钮的第三类型操作,获取当前应用程序名及程序版本号下最新保存的测试脚本,并将获取的测试脚本发送至所述待测试应用程序,从而针对所述待测试应用程序的待测试页面进行测试。
第二方面,本申请提供一种测试脚本生成装置,所述测试脚本生成装置包括:
悬浮窗显示控制单元,用于响应于用户开启待测试应用程序的待测试页面的操作,在显示的待测试应用程序的待测试页面上一并显示悬浮窗按钮,以及响应于用户针对所述悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖所述待测试页面;
操作记录单元,用于获取用户在所述半透明悬浮窗口上的手势操作数据,并进行记录;
测试脚本存储单元,用于响应于用户针对所述悬浮窗按钮的第二类型操作,根据记录的所述手势操作数据生成针对所述待测试页面的测试脚本,并进行存储。
结合第二方面,在一种可行的实现方式中,所述操作记录单元,用于
在开启所述半透明悬浮窗口后,将所述半透明悬浮窗口设置为获取焦点状态,检测并接收用户在所述半透明悬浮窗口上输入的手势操作数据,以及获取所述手势操作对应的事件类型、操作位置、操作起始和终止时间,并进行记录;当检测到用户在所述半透明悬浮窗口输入的手势操作终止时,将所述半透明悬浮窗口设置为不获取焦点状态,同时将所述待测试页面设置为获取焦点状态,将所述手势操作数据透传至所述待测试页面;以及重新将所述半透明悬浮窗口设置为获取焦点状态;
所述测试脚本存储单元,用于根据记录的手势操作数据生成Json格式的测试脚本,并将生成的所述测试脚本与所述待测试应用程序的至少一种属性进行关联存储,所述至少一种属性包括所述待测试应用程序的应用程序名或程序版本号;
所述装置还包括测试执行单元,用于响应于用户针对所述悬浮窗按钮的第三类型操作,获取当前应用程序名及程序版本号下保存的已有测试脚本,在接收用户的选择指令后获取相应的测试脚本并将获取的测试脚本发送至所述待测试应用程序,从而针对所述待测试应用程序的待测试页面进行测试。
第三方面,本申请还提供一种计算机可读存储介质,所述存储介质包括存储的程序,在所述程序运行时控制所述存储介质所在设备执行上述第一方面所述的测试脚本生成方法。
本申请提供的测试脚本生成方法、装置及存储介质,在用户开启待测试应用程序的待测试页面后,一并显示显示悬浮窗按钮,在用户对悬浮窗按钮执行第一类型操作后,就开启半透明悬浮窗以覆盖待测试页面,用户可以在半透明悬浮窗口上输入手势操作数据,在接收到用户针对悬浮窗按钮输入的第二类型操作后,就自动根据记录的手势操作数据生成针对待测试页面的测试脚本,并进行存储,从而相比于现有技术,用户无需进行复杂的编程知识的学习,就可以高效地录入针对待测试页面的测试脚本,从而提高了测试效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种测试脚本生成方法的流程示意图;
图2是本申请实施例提供的又一种测试脚本生成方法的流程示意图;
图3a至图3c是本申请实施例提供的测试脚本生成方法的应用场景示意图;
图4是本申请实施例提供的一种测试脚本生成装置的功能框图;
图5是本申请实施例提供的一种计算机设备的功能框图。
具体实施方式
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述终端,但这些终端不应限于这些术语。这些术语仅用来将终端彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一终端也可以被称为第二终端,类似地,第二终端也可以被称为第一终端。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
本申请实施例提供的图像形成装置包括但不限于是打印机、复印机、传真机、扫描仪,或者将打印、复印、传真、扫描等功能集成于一体的多功能一体机等,其功能是在成像介质上印制图像或文字。本申请实施例中的图像形成装置,既可以是能实现单色打印的装置,也可以是彩色打印的装置。
参见图1,在本申请的一个实施例中提供了测试脚本生成方法。本测试脚本生成方法可以应用于终端,所述终端可以是移动终端、PC或服务器等计算机设备。
本申请实施例中的测试脚本生成方法,包括:
S11,响应于用户开启待测试应用程序的待测试页面的操作,在显示的待测试应用程序的待测试页面上一并显示悬浮窗按钮。
S12,响应于用户针对悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖待测试页面;
S13,获取用户在半透明悬浮窗口上的手势操作数据,并进行记录。
S14,响应于用户针对悬浮窗按钮的第二类型操作,根据记录的所述手势操作数据生成针对待测试页面的测试脚本,并进行存储。
上述本申请实施例提供的测试脚本生成方法,在用户开启待测试应用程序的待测试页面后,一并显示显示悬浮窗按钮,在用户对悬浮窗按钮执行第一类型操作后,就开启半透明悬浮窗以覆盖待测试页面,用户可以在半透明悬浮窗口上输入手势操作数据,在接收到用户针对悬浮窗按钮输入的第二类型操作后,就自动根据记录的手势操作数据生成针对待测试页面的测试脚本,并进行存储,从而相比于现有技术,用户无需进行复杂的编程知识的学习,就可以高效地录入针对待测试页面的测试脚本,从而提高了测试效率。
下面在本申请的一个实施例中,对上述步骤S11~S14作详细说明。
S11,响应于用户开启待测试应用程序的待测试页面的操作,在显示的待测试应用程序的待测试页面上一并显示悬浮窗按钮。
具体的,在本步骤之前,可以创建测试脚本控制应用程序,测试脚本控制应用程序由计算机程序模块构成,所述的计算机程序模块至少由一个计算机程序指令构成,用以实现设定的功能。测试脚本控制应用程序包括有悬浮窗口控制模块,用于通过设定悬浮窗口,并通过悬浮窗口接收用户输入的手势操作数据作为针对待测试应用程序的测试数据,而无需用户输入具有复杂语法规则的详细的命令行脚本。
在本申请的一个实施例中,可以预先将测试脚本控制应用程序安装到终端中。安装完成后,悬浮窗按钮悬浮显示于终端的界面上,并且是悬浮显示于终端的最前端,即在用户打开其它应用程序后,悬浮窗按钮仍然显示于其它应用程序的界面上。悬浮窗按钮可以显示于终端界面的边缘处,便于较少地遮挡其它应用程序页面上的内容。在本申请的其它实施例中,还可以将悬浮窗按钮预先与待测试的应用程序进行绑定,具体将悬浮窗按钮与待测试应用程序的至少一个待测试页面进行绑定,由此在终端的界面上显示待测试应用程序的待测试页面时,将会在界面上一并显示悬浮窗按钮,以供通过该悬浮窗按钮接收用户的操作,从而对悬浮窗进行控制。在本申请实施例中,待测试页面上显示当前开发的应用程序具有的各个元素,例如包含文字、图片,还可以包含有按钮、调节杆等控件。
S12,响应于用户针对悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖待测试页面。
在本申请实施例中,用户通过对悬浮窗按钮输入第一类型操作,以开启悬浮窗。第一类型操作在本申请实施例中并不限定,可以是单次点击、双次点击、长按等等,在本申请实施例中可以以单次点击来作为举例。例如,当用户点击悬浮窗按钮后,将会出现半透明悬浮窗覆盖待测试页面。用户可以透过半透明悬浮窗观察到待测试页面。半透明悬浮窗用于接收用户输入的手势操作,并将这些手势操作作为对待测试页面所要进行的测试操作进行记录,而不会使待测试页面对这些操作进行响应。
S13,获取用户在半透明悬浮窗口上的手势操作数据,并进行记录。
具体的,在本申请实施例中,用户在悬浮窗口的任意位置输入手势操作数据,其中手势操作可以是单次点击、双击、滑动、双指操作等形式的手势操作,操作的位置可以在悬浮窗上位于待测试页面控件的位置处,也可以其位于其它文字、图片等位置处。在本申请实施例中,对手势数据进行记录,具体是按照用户操作的先后顺序,记录用户手势操作的事件类型、操作位置、操作起始点、操作终止点以及操作起始时间和操作终止时间等数据。
S14,响应于用户针对悬浮窗按钮的第二类型操作,根据记录的所述手势操作数据生成针对待测试页面的测试脚本,并进行存储。
具体的,在本申请实施例中,当用户针对悬浮窗按钮输入第二类型操作,就关闭覆盖在待测试页面上的半透明悬浮窗口,停止接收用户输入的用户手势操作数据,并将已经记录的用户手势操作数据转换为针对待测试页面的测试脚本,并保存在本地。在本步骤中,所述的第二类型操作,可以与第一类型操作相同,也可以不同。在本申请实施例中,也可以以单次点击来作为举例。
请一并参阅图2、图3a至图3c,在本申请的一个实施例中提供了一种测试脚本生成方法。本申请实施例中的测试脚本生成方法应用于一移动终端中,该移动终端是安装有Android操作系统的移动终端。
具体的,本申请实施例中的测试脚本生成方法,包括:
S20,安装测试脚本控制应用程序,使悬浮窗按钮显示于终端界面上。
S21,响应于用户开启待测试应用程序的待测试页面的操作,在显示的待测试应用程序的待测试页面上一并显示悬浮窗按钮。
具体的,用户可以但不限于通过点击移动终端上的待测试应用程序的图标以开启待测试应用程序,开发过程中的应用程序可以包含至少一个待测试页面,用户可以但不限于通过多次点击链接的形式以开启其中一个待测试页面,待测试页面上显示当前开发的应用程序具有的各个元素,例如包含文字、图片,还可以包含有按钮、调节杆等控件。同时,在本申请实施例中将一并显示悬浮窗按钮,悬浮窗按钮可以设置在界面的边缘,也可以设置在待测试应用程序的工具栏或状态栏中。以图3a为例,以应用程序A作为举例,在应用程序A的待测试页面100上具有操作控件101,而悬浮窗按钮200显示于界面的右下角。当前状态下,悬浮窗口并未打开,由此在悬浮窗按钮中显示为“开”,以供用户在点击后,相应打开一悬浮窗口
S22,响应于用户针对悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖待测试页面。
在本申请实施例中,第一类型操作可以但不限于是点击操作,即在用户点击悬浮窗按钮200后,开启一半透明悬浮窗口300覆盖于待测试页面100上,具体示意为如3b。用户透过半透明悬浮窗口300可以观察到待测试页面100上的所有元素,例如操作控件101。此时,用户可以在脚本录入浮层上进行手势操作。且悬浮窗按钮200中显示为“关”,以供用户在再次点击后,关闭脚本录入浮层300。
S23,获取用户在半透明悬浮窗口上的手势操作数据,并进行记录。
本申请实施例中的应用程序A可能涉及多个待测试页面。一般的,在应用程序A中,用户可以点击按钮或控件实现页面的跳转。例如在应用程序A中,用户可以点击操作控件101,使页面从页面100跳转至另一页面。然而,当开启半透明悬浮窗口300,用于录制用户的手势操作时,半透明悬浮窗口300之下的页面100是难以获取用户的操作的,因此为了高效地录制用户对多个测试页面的手势操作时,可以采用下列机制来实现:
在开启所述半透明悬浮窗口后,将所述半透明悬浮窗口设置为获取焦点状态,检测并接收用户在所述半透明悬浮窗口上输入的手势操作数据,以及获取所述手势操作对应的事件类型、操作位置、操作起始和终止时间,并进行记录;
当检测到用户在所述半透明悬浮窗口输入的手势操作终止时,将所述半透明悬浮窗口设置为不获取焦点状态,同时将所述待测试页面设置为获取焦点状态,将所述手势操作数据透传至所述待测试页面,例如,可以在用户在所述半透明悬浮窗口输入的手势操作终止超过预定时间后,判断为用户在所述半透明悬浮窗口输入的手势操作终止,预定时间的长度可以被适当地设定;
重新将所述半透明悬浮窗口设置为获取焦点状态。
由此可见,本步骤在半透明悬浮窗口接收到用户手势数据后,不仅进行记录,在记录之后将用户手势操作数据透传至待测试页面,当用户手势操作是针对某个按钮或控件时,就会进行响应,从而实现待测试应用程序的页面跳转。例如,在图3b中,用户在半透明悬浮窗口300输入点击事件,当点击的位置处于半透明窗口且位于操作控件101的位置时,会对用户输入的点击事件进行记录,在记录完成之后,将点击事件透传至页面100,应用程序A对其进行响应,实现页面跳转至页面102,如图3c示意,此时用户可以继续进行手势操作的输入,而无需经过先关闭半透明悬浮窗口,再操作应用程序A,最后再重新开启半透明悬浮窗口录制的复杂操作流程。其中,根据系统规则,用户手势操作无法同时被两个应用程序接收。
下面在本申请的一个实施例中,以移动终端为Android终端为例来解释上述机制。
在Android操作系统中,通过在Android的event驱动文件中记录用户操作的事件,再通过Framework的InputManagService读取用户的事件,然后将读取的用户事件分发给WindowManageService管理的各个窗口,进一步再将事件分发至WindowManageService管理的各个view作事件的处理。
在本申请实施例中,当开启半透明悬浮窗口,将半透明悬浮窗口设置为获取焦点状态。再检测到用户输入事件后,拦截到用户的点击、滑动等等事件输入,根据事件参数类型创建MotionEvent并调用setLocation,setAction,setDownTime等接口设置关键参数,并进行记录。记录完成之后,修改当前半透明悬浮窗口为不获取焦点状态,以便将生成的MotionEvent实例注入InputManageService的拦截器中,将待测试页面设置为获取焦点状态,使手势操作数据通过半透明悬浮窗口进行透传,从而使待测试页面进行响应。
S24,响应于用户针对悬浮窗按钮的第二类型操作,根据记录的所述操作手势数据生成针对待测试页面的测试脚本,并进行存储。
具体的,第二类型操作可以是单次点击操作,即当用户再次点击悬浮窗按钮,将关闭半透明悬浮窗口,停止接收用户输入的手势数据,并将已经记录的用户数据进行保存,并生成针对待测试页面的测试脚本。
在本申请的一个实施例中,具体讲记录的手势操作数据生成Json格式的测试脚本,并保存在移动终端本地。在存储时,还可以将将生成的测试脚本与待测试应用程序的至少一种属性进行关联存储,所述的至少一种属性包可以但不限于是待测试应用程序的应用程序名或程序版本号。
S25,响应于用户针对悬浮窗按钮的第三类型操作,获取当前应用程序名即程序版本号下保存的已有测试脚本,在接收用户的选择指令后获取相应的测试脚本,并将获取的测试脚本发送至待测试应用程序,针对待测试应用程序的待测试页面进行压力测试。
具体的,第三类型操作可以但不限于是长按。当用户长按悬浮窗按钮时,将会获取最新保存的当前应用程序版本号下的测试脚本,并发送至待测试应用程序进行压力测试。对待测试应用程序进行压力测试,即是模拟用户针对应用程序待测试页面的点击、拖动、长按等多种类型的手势操作,以获取待测试应用测试的稳定性。
在本申请第二方面,还提供一种测试脚本生成装置,如图4所示意。
在本申请实施例中,所提供的一种测试脚本生成装置400,包括:
悬浮窗显示控制单元10,用于响应于用户开启待测试应用程序的待测试页面的操作后,在显示的待测试应用程序的待测试页面上一并显示悬浮窗按钮,以及响应于用户针对所述悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖所述待测试页面;
操作记录单元20,用于获取用户在所述半透明悬浮窗口上的手势操作数据,并进行记录;
测试脚本存储单元30,用于响应于用户针对所述悬浮窗按钮的第二类型操作,根据记录的所述手势操作数据生成针对所述待测试页面的测试脚本,并进行存储。
测试执行单元40,用于响应于用户针对所述悬浮窗按钮的第三类型操作,获取当前应用程序名及程序版本号下最新保存的测试脚本,并将获取的测试脚本发送至所述待测试应用程序,从而针对所述待测试应用程序的待测试页面进行测试。
本申请实施例中的测试脚本生成装置400,可以实现前述实施例中所提供的测试脚本生成方法,具体原理就不再赘述,可以参阅前述测试脚本生成方法的实施例的描述。
第三方面,本申请实施例提供了一种计算机可读存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述的测试脚本生成方法。
第四方面,本申请实施例提供一种计算机设备,图5是本申请实施例提供的一种计算机设备的示意图。如图5所示,该实施例的计算机设备500包括:处理器501、存储器502以及存储在存储器中并可在处理器501上运行的计算机程序303,处理器501执行计算机程序503时实现实施例中的测试脚本生成方法,为避免重复,此处不一一赘述。或者,该计算机程序被处理器501执行时实现实施例中图像形成装置中各模型中/单元的功能,为避免重复,此处不一一赘述。
计算机设备500可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可包括,但不仅限于,处理器501、存储器502。本领域技术人员可以理解,图5仅仅是计算机设备500的示例,并不构成对计算机设备500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器501可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器502可以是计算机设备500的内部存储单元,例如计算机设备300的硬盘或内存。存储器502也可以是计算机设备500的外部存储设备,例如计算机设备500上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器502还可以既包括计算机设备500的内部存储单元也包括外部存储设备。存储器502用于存储计算机程序以及计算机设备所需的其他程序和数据。存储器502还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例上述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上上述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种测试脚本生成方法,应用于终端,其特征在于,所述方法包括:
响应于用户开启待测试应用程序的待测试页面的操作,在所述终端显示的所述待测试页面上一并显示悬浮窗按钮;
响应于用户针对所述悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖所述待测试页面;
获取用户在所述半透明悬浮窗口上的手势操作数据,并进行记录;
响应于用户针对所述悬浮窗按钮的第二类型操作,根据记录的所述手势操作数据生成针对所述待测试页面的测试脚本,并进行存储。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:预先使所述悬浮窗按钮悬浮显示于所述终端的界面上。
3.根据权利要求1所述的方法,其特征在于,所述获取用户在所述半透明悬浮窗口上的手势操作数据的步骤,包括:
在开启所述半透明悬浮窗口后,将所述半透明悬浮窗口设置为获取焦点状态,检测并接收用户在所述半透明悬浮窗口上输入的手势操作数据,以及获取所述手势操作对应的事件类型、操作位置、操作起始和终止时间,并进行记录;
当检测到用户在所述半透明悬浮窗口输入的手势操作终止时,将所述半透明悬浮窗口设置为不获取焦点状态,同时将所述待测试页面设置为获取焦点状态,将所述手势操作数据透传至所述待测试页面;
重新将所述半透明悬浮窗口设置为获取焦点状态。
4.根据权利要求3所述的方法,其特征在于,所述根据记录的所述手势操作数据生成针对所述待测试页面的测试脚本的步骤,包括:
根据记录的手势操作数据生成Json格式的测试脚本。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:将生成的所述测试脚本与所述待测试应用程序的至少一种属性进行关联存储。
6.根据权利要求5所述的方法,其特征在于,所述至少一种属性包括所述待测试应用程序的应用程序名或程序版本号。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
响应于用户针对所述悬浮窗按钮的第三类型操作,获取当前应用程序名及程序版本号下保存的已有测试脚本,在接收用户的选择指令后获取相应的测试脚本,并将获取的测试脚本发送至所述待测试应用程序,从而针对所述待测试应用程序的待测试页面进行测试。
8.一种测试脚本生成装置,其特征在于,所述测试脚本生成装置包括:
悬浮窗显示控制单元,用于响应于用户开启待测试应用程序的待测试页面的操作,在显示的待测试应用程序的待测试页面上一并显示悬浮窗按钮,以及响应于用户针对所述悬浮窗按钮的第一类型操作,开启一半透明悬浮窗口以覆盖所述待测试页面;
操作记录单元,用于获取用户在所述半透明悬浮窗口上的手势操作数据,并进行记录;
测试脚本存储单元,用于响应于用户针对所述悬浮窗按钮的第二类型操作,根据记录的所述手势操作数据生成针对所述待测试页面的测试脚本,并进行存储。
9.根据权利要求8所述的装置,其特征在于,所述操作记录单元,用于在开启所述半透明悬浮窗口后,将所述半透明悬浮窗口设置为获取焦点状态,检测并接收用户在所述半透明悬浮窗口上输入的手势操作数据,以及获取所述手势操作对应的事件类型、操作位置、操作起始和终止时间,并进行记录;当检测到用户在所述半透明悬浮窗口输入的手势操作终止时,将所述半透明悬浮窗口设置为不获取焦点状态,同时将所述待测试页面设置为获取焦点状态,将所述手势操作数据透传至所述待测试页面;以及重新将所述半透明悬浮窗口设置为获取焦点状态;
所述测试脚本存储单元,用于根据记录的手势操作数据生成Json格式的测试脚本,并将生成的所述测试脚本与所述待测试应用程序的至少一种属性进行关联存储,所述至少一种属性包括所述待测试应用程序的应用程序名或程序版本号;
所述装置还包括测试执行单元,用于响应于用户针对所述响应于用户针对所述悬浮窗按钮的第三类型操作,获取当前应用程序名及程序版本号下保存的已有测试脚本,在接收用户的选择指令后获取相应的测试脚本,并将获取的测试脚本发送至所述待测试应用程序,从而针对所述待测试应用程序的待测试页面进行测试。
10.一种计算机可读存储介质,其特征在于,所述存储介质包括存储的程序,在所述程序运行时控制所述存储介质所在设备执行权利要求1至7任意一项所述的测试脚本生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111458567.XA CN114253841A (zh) | 2021-12-02 | 2021-12-02 | 测试脚本生成方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111458567.XA CN114253841A (zh) | 2021-12-02 | 2021-12-02 | 测试脚本生成方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114253841A true CN114253841A (zh) | 2022-03-29 |
Family
ID=80793773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111458567.XA Pending CN114253841A (zh) | 2021-12-02 | 2021-12-02 | 测试脚本生成方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114253841A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145464A (zh) * | 2022-07-28 | 2022-10-04 | 重庆长安汽车股份有限公司 | 一种页面测试方法、装置、电子设备及存储介质 |
CN117539773A (zh) * | 2023-11-22 | 2024-02-09 | 东风本田发动机有限公司 | 车载数据采集方法和装置 |
-
2021
- 2021-12-02 CN CN202111458567.XA patent/CN114253841A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145464A (zh) * | 2022-07-28 | 2022-10-04 | 重庆长安汽车股份有限公司 | 一种页面测试方法、装置、电子设备及存储介质 |
CN115145464B (zh) * | 2022-07-28 | 2023-07-18 | 重庆长安汽车股份有限公司 | 一种页面测试方法、装置、电子设备及存储介质 |
CN117539773A (zh) * | 2023-11-22 | 2024-02-09 | 东风本田发动机有限公司 | 车载数据采集方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109086203B (zh) | 页面的检测方法和装置 | |
CN107783898B (zh) | 移动应用的测试方法及测试设备 | |
CN110226095B (zh) | 嵌入式系统的通用自动化测试 | |
CN114253841A (zh) | 测试脚本生成方法、装置及存储介质 | |
US11468226B2 (en) | Systems and methods for presentation of a terminal application screen | |
JP2012038162A (ja) | 自動テストツール・プログラム及び自動テスト方法 | |
US9531893B2 (en) | Screen image providing apparatus, screen image providing method, and computer readable medium | |
US9804955B2 (en) | Method and apparatus for creating reference images for an automated test of software with a graphical user interface | |
CN111324352A (zh) | 一种应用页面的代码生成方法及相关设备 | |
CN106126424A (zh) | 一种脚本可视化的自动化测试方法、装置和移动终端 | |
JP5780115B2 (ja) | エラー検知方法、情報処理回路及びエラー検知用プログラム | |
CN102334096A (zh) | 平台无关屏幕捕获工具 | |
EP3598292A1 (en) | Method, device, and apparatus for processing driver on terminal device side | |
TWI476587B (zh) | 測試電子裝置之功能的測試方法以及測試裝置 | |
US20080170044A1 (en) | Image Printing Apparatus and Method for Processing an Image | |
CN111414309A (zh) | 应用程序的自动化测试方法、计算机设备和存储介质 | |
CN102202146A (zh) | 显示画面控制装置、显示画面控制方法 | |
CN112711536A (zh) | 自动拨测方法及系统、计算机可读存储介质 | |
US10114518B2 (en) | Information processing system, information processing device, and screen display method | |
US11436299B2 (en) | Information processing system, server apparatus, and information processing method | |
US11070716B2 (en) | Image sensor system, image sensor, data generation method of image sensor in image sensor system, and non-transitory computer-readable recording medium | |
US10412251B2 (en) | Image processing apparatus for debugging a hardware emulation process | |
US8976378B2 (en) | Pre-flight system for PDF/VT | |
JP2008198097A (ja) | 情報処理装置、制御装置、スクリプト処理方法、記憶媒体、プログラム | |
JP7319516B2 (ja) | プログラム、情報処理装置及びその制御方法 |
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 |