自动化测试脚本执行方法及装置与流程

文档序号:33259731发布日期:2023-02-21 18:19阅读:84来源:国知局
自动化测试脚本执行方法及装置与流程

1.本发明涉及软件自动化测试技术领域,尤其涉及一种自动化测试脚本执行方法及装置。


背景技术:

2.移动应用自动化测试过程中根据测试脚本执行测试操作。但在脚本执行的过程中,受限于网络、终端操作系统以及移动应用自身性能等因素,被测应用的页面加载时长会有很大波动,导致测试脚本因不能正确获取页面中的被测元素而中断测试执行。若脚本中预设了等待时长,往往因预设等待时长设置不合理而导致测试效率过低。
3.对自动化测试脚本在执行过程中脚本各步骤之间的执行时间控制包括两个步骤:第一,判断当前页面加载状态;第二,根据当前页面状态,确定下一步操作执行的等待时长。现有技术中,确定下一步操作执行的等待时长有两类方法。一类是设置固定时间的等待时长,例如如果判定游戏当前处于动态画面,则等待固定的预设的时间,如5秒,然后再继续界面截图重复判断;另一类是在预设时间长度内以预定频率的方式循环检测被测页面是否加载完成,如预设时间长度为1分钟,预定频率为5秒,以5秒的频率获取循环页面元素,若超过1分钟结束页面元素获取。
4.上述两类方法无法确定合适的等待时长,如果等待时长过长,会降低测试效率,例如页面需要5秒加载完成,设置的等待时长为1分钟;等待时长过短,导致频繁调用计算模型而过渡消耗系统资源,例如当前环境为弱网环境导致页面加载速度非常缓慢,按预设频率5秒钟查找一次界面元素,导致系统资源浪费,影响性能。


技术实现要素:

5.本发明提供一种自动化测试脚本执行方法及装置,用以解决现有技术中无法确定合适的等待时长,降低自动化测试效率或浪费系统资源的缺陷,实现确定合适的等待时长,提高自动化测试效率,降低系统资源消耗。
6.本发明提供一种自动化测试脚本执行方法,包括:
7.在执行应用程序的当前测试步骤对应的自动化测试脚本后,获取所述应用程序的当前页面的图像;
8.在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度;
9.根据所述当前页面的加载进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长;
10.在所述本次等待时长过后,重新获取所述应用程序的当前页面的图像,根据重新获取的图像确定所述当前页面的加载状态,直到所述当前页面的加载状态为加载成功,执行所述下一个测试步骤对应的自动化测试脚本。
11.根据本发明提供的一种自动化测试脚本执行方法,所述根据所述当前页面的加载
进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长,包括:
12.根据所述当前测试步骤之前所述应用程序的每个测试步骤的总等待时长,获取所述当前测试步骤之前所有测试步骤的平均等待时长;
13.根据所述当前页面的加载进度和所述平均等待时长,获取所述当前测试步骤的下一个测试步骤的本次等待时长。
14.根据本发明提供的一种自动化测试脚本执行方法,所述根据所述当前页面的加载进度和所述平均等待时长,获取所述当前测试步骤的下一个测试步骤的本次等待时长,包括:
15.在所述当前页面的加载进度大于第一预设阈值的情况下,将1减去预设常数的差值乘以所述平均等待时长,获取所述当前测试步骤的下一个测试步骤的本次等待时长;
16.在所述当前页面的加载进度小于或等于所述第一预设阈值的情况下,将1加上所述预设常数的和乘以所述平均等待时长,获取所述当前测试步骤的下一个测试步骤的本次等待时长。
17.根据本发明提供的一种自动化测试脚本执行方法,所述在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度,包括:
18.在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,获取确定所述当前测试步骤对应的当前页面的加载状态为中间状态的总次数;
19.在所述总次数小于第二预设阈值的情况下,根据所述图像获取所述当前页面的加载进度。
20.根据本发明提供的一种自动化测试脚本执行方法,所述在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度之前,还包括:
21.基于resnet-18算法对所述图像进行分类,获取所述当前页面的加载状态。
22.根据本发明提供的一种自动化测试脚本执行方法,所述根据所述图像获取所述当前页面的加载进度,包括:
23.将所述图像转化为灰度图,对所述灰度图进行二值化处理,获取所述图像对应的二值图像;
24.对所述二值图像进行闭运算,获取闭运算后的所述二值图像中的连通域;
25.统计面积大于第三预设阈值的连通域的个数,将所述个数作为所述当前页面的加载进度。
26.本发明还提供一种自动化测试脚本执行装置,包括:
27.图像获取模块,用于在执行应用程序的当前测试步骤对应的自动化测试脚本后,获取所述应用程序的当前页面的图像;
28.进度获取模块,用于在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度;
29.时长获取模块,用于根据所述当前页面的加载进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长;
30.测试执行模块,用于在所述本次等待时长过后,重新获取所述应用程序的当前页
面的图像,根据重新获取的图像确定所述当前页面的加载状态,直到所述当前页面的加载状态为加载成功,执行所述下一个测试步骤对应的自动化测试脚本。
31.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述自动化测试脚本执行方法的步骤。
32.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述自动化测试脚本执行方法的步骤。
33.本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述自动化测试脚本执行方法的步骤。
34.本发明提供的自动化测试脚本执行方法及装置,通过根据当前测试步骤对应的自动化测试脚本执行后的当前测试页面的图像分析当前页面的加载状态,在判断当前页面处于中间状态的基础上,进一步根据当前页面的加载进度动态调整下一个测试步骤对应的自动化测试脚本的等待时间窗口,从而保证自动化测试过程中合理安排下一测试步骤的等待时长,提高测试效率,降低资源消耗。
附图说明
35.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
36.图1是本发明提供的自动化测试脚本执行方法的流程示意图之一;
37.图2是本发明提供的自动化测试脚本执行方法的流程示意图之二;
38.图3是本发明提供的自动化测试脚本执行方法中执行等待时间确定的流程示意图;
39.图4是本发明提供的自动化测试脚本执行装置的结构示意图;
40.图5是本发明提供的电子设备的结构示意图。
具体实施方式
41.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
42.下面结合图1描述本发明的一种自动化测试脚本执行方法,包括:步骤101,在执行应用程序的当前测试步骤对应的自动化测试脚本后,获取所述应用程序的当前页面的图像;
43.可选地,本实施例中的应用程序为移动设备上的应用程序。应用程序的自动化测试脚本经过解析后,按照应用程序的测试步骤的先后顺序,依次执行每个测试步骤对应的自动化测试脚本。
44.在执行应用程序的当前测试步骤中的相关操作,如点击操作后,获取应用程序的
当前页面的图像。
45.通过页面加载状态分类器对当前页面的图像进行分类,判断当前页面的加载状态。本实施例不限于页面加载状态分类器的种类。
46.加载状态包括中间状态s01、加载失败s02和加载成功s03。中间状态是指处于加载中的状态,页面中加载有部分页面内容。加载成功时,页面中加载有全部页面内容。页面加载失败时,页面中显示的是页面加载失败的相关信息,如加载失败的原因。
47.步骤102,在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度;
48.如图2所示,可选地,在当前页面的加载状态判定为加载成功的情况下,继续执行当前测试步骤的下一个测试步骤对应的自动化测试脚本。
49.在当前页面加载状态判定为加载失败的情况下,如当前页面为第一次加载则刷新当前页面重新加载一次,再判断当前页面状态;如过当前页面非第一次加载,则终止测试。
50.在当前页面的加载状态判定为中间状态的情况下,通过页面加载进度分类器判断当前页面的加载进度。本实施例不限于页面加载进度分类器的种类。
51.步骤103,根据所述当前页面的加载进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长;
52.可选地,当前页面的加载进度根据当前页面的加载内容确定,加载内容越多,加载进度越大。
53.根据当前页面的加载进度,通过延时装置来动态设置下一个测试步骤的本次等待时长。可选地,加载进度越大,本次等待时长越短;加载进度越小,本次等待时长越长。
54.步骤104,在所述本次等待时长过后,重新获取所述应用程序的当前页面的图像,根据重新获取的图像确定所述当前页面的加载状态,直到所述当前页面的加载状态为加载成功,执行所述下一个测试步骤对应的自动化测试脚本。
55.超过本次等待时长后,重新获取当前页面的图像。继续判断当前页面的加载状态,迭代执行步骤102至104,直到根据重新获取的图像确定当前页面的加载状态为加载成功。此时,执行下一个测试步骤对应的自动化测试脚本。
56.在根据当前页面图像确定页面的加载状态为中间状态的情况下,即可根据当前页面的加载进度确定一个等待时长。超过等待时长后继续根据当前页面图像确定当前页面的加载状态。如果加载状态还为中间状态,则继续根据当前页面的加载进度确定等待时长,根据等待时长进行等待,直到页面的加载状态为加载成功,才进行下一个测试步骤。
57.本实施例通过根据当前测试步骤对应的自动化测试脚本执行后的当前测试页面的图像分析当前页面的加载状态,在判断当前页面处于中间状态的基础上,进一步根据当前页面的加载进度动态调整下一个测试步骤对应的自动化测试脚本的等待时间窗口,从而保证自动化测试过程中合理安排下一测试步骤的等待时长,提高测试效率,降低资源消耗。
58.在上述实施例的基础上,本实施例中所述根据所述当前页面的加载进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长,包括:根据所述当前测试步骤之前所述应用程序的每个测试步骤的总等待时长,获取所述当前测试步骤之前所有测试步骤的平均等待时长;
59.假设当前测试步骤之前已执行完n个测试步骤。计算n个测试步骤中相邻两个测试
步骤的执行时间点之间的时间差,根据时间差计算平均等待时间t,即t=(t0+δt1+

+δtn)/n。其中,t0设置为预设值,如2s,δtn=t
n-t
(n-1)
。tn为第n个测试步骤的执行时间点,t
(n-1)
为第n-1个测试步骤的执行时间点,δtn为第n个测试步骤的总等待时长。δt1=t
2-t1,t1为第1个测试步骤的执行时间点,t2为第2个测试步骤的执行时间点,δt1为第2个测试步骤的总等待时长。
60.根据所述当前页面的加载进度和所述平均等待时长,获取所述当前测试步骤的下一个测试步骤的本次等待时长。
61.将计算出的平均等待时长作为参考时长。根据加载进度和参考等待时长获取当前测试步骤的下一个测试步骤的本次等待时长。本实施例不限于本次等待时长的具体获取方法。
62.本实施例中的动态参考时长根据之前执行的测试步骤的等待时长确定,从而使得根据参考时长确定的下一测试步骤的等待时长更加符合实际的环境因素。
63.在上述实施例的基础上,本实施例中所述根据所述当前页面的加载进度和所述平均等待时长,获取所述当前测试步骤的下一个测试步骤的本次等待时长,包括:
64.在所述当前页面的加载进度大于第一预设阈值的情况下,将1减去预设常数的差值乘以所述平均等待时长,获取所述当前测试步骤的下一个测试步骤的本次等待时长;
65.本实施例采用页面加载进度分类器对当前页面的加载进度进行分类。在当前页面的加载进度大于第一预设阈值时,页面加载进度分类器输出分类号t01。将分类号t01输入到等待时间计算器中,计算下一个测试步骤的本次等待时长t=t
×
(1-α%)。其中,t为平均等待时长。可选地,预设常数α以测试执行效率为主要衡量标准,经过大量实践数据将α设置为30。
66.在所述当前页面的加载进度小于或等于所述第一预设阈值的情况下,将1加上所述预设常数的和乘以所述平均等待时长,获取所述当前测试步骤的下一个测试步骤的本次等待时长。
67.在当前页面的加载进度小于或等于第一预设阈值时,页面加载进度分类器输出分类号t02。将分类号t02输入到等待时间计算器中,计算下一个测试步骤的本次等待时长t=t
×
(1+α%)。
68.本实施例根据页面加载进度分类器的判断结果动态确定下一个测试步骤的本次等待时长,具体流程如图3所示。等待时长能够根据当前页面的实际加载进度进行及时调整,避免设置固定等待时长而引起的测试效率低,浪费资源的问题。
69.在上述各实施例的基础上,本实施例中所述在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度,包括:
70.在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,获取确定所述当前测试步骤对应的当前页面的加载状态为中间状态的总次数;在所述总次数小于第二预设阈值的情况下,根据所述图像获取所述当前页面的加载进度。
71.为了避免等待页面加载的时间过长,在多次等待时长过后,当前页面的加载状态依然为中间状态,则结束测试;否则继续根据当前页面加载进度计算等待时长,并根据等待时长进行等待。
72.在上述各实施例的基础上,本实施例中所述在根据所述图像确定所述当前页面的
加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度之前,还包括:基于resnet-18算法对所述图像进行分类,获取所述当前页面的加载状态。
73.为适用于一般应用程序,要求具有通用性。本实施例采用深度学习算法训练页面加载状态分类器,从而实现分类预测。
74.基于图像的深度学习算法有很多种,在实际应用过程中可不局限于一种算法。基于pytorch框架选取vgg16、resnet18、lenet、alexnet和googlenet五种神经网络。从参数量、模型大小、精确度和预测时间等方面进行比较,如表1所示。
75.表1页面加载状态分类器设计方案比较表
[0076] 参数量模型大小acc/30epoch预测时间googlenet6.8m80.5m92.48%12.78帧/秒alexnet60m58m88.13%10.95帧/秒lenet60k1.57m86.79%13.01帧/秒vgg16138m526m92.76%12.94帧/秒resnet1833m42.7m93.76%15.87帧/秒
[0077]
页面加载状态分类器从模型训练、预测时间以及精准度等方面综合考虑,选取resnet-18为最佳。相比于其他四种算法,resnet-18模型收敛较快,且利用了shortcut连接,解决了深度网络中模型退化的问题。预测时间短,可达15.87帧/秒,在实际应用中表现出良好的性能。模型大小适当,可部署在服务器端,也可以经过模型裁剪后部署移动端,预测准确度高。
[0078]
本实施例采用resnet-18算法对样本数据集进行训练,经过卷积层后,经过batchnormal层对输出参数进行批标准化处理。以relu为激活函数,进一步缓解梯度弥散问题。经过最大池化层加快特征提取,经过5个残差块进一步提取图片的高维特征,最后进入平均池化层和线性层,模型初始化采用阶段正态分布。该模型预测准确率为95.75%,速度为15.87帧/秒,满足应用程序自动化测试在功能和性能上的要求。
[0079]
本实施例中的页面加载状态的分类器有针对性地对应用程序的页面加载状态进行分类,利用深度学习算法训练模型,从而形成具有针对性和通用性的判定方法。该模式适用于所有应用程序页面加载状态的判断,输入仅为当前页面的截图即可。
[0080]
在上述各实施例的基础上,本实施例中所述根据所述图像获取所述当前页面的加载进度,包括:将所述图像转化为灰度图,对所述灰度图进行二值化处理,获取所述图像对应的二值图像;对所述二值图像进行闭运算,获取闭运算后的所述二值图像中的连通域;统计面积大于第三预设阈值的连通域的个数,将所述个数作为所述当前页面的加载进度。
[0081]
本实施例通过闭运算增强图像的连通性,每个连通域的面积通过图像中每个连通域的轮廓获取。将面积小于或等于第三预设阈值的连通域滤除,减小干扰。将面积大于第三预设阈值的连通域的个数作为页面加载进度。可选地,以大量实践为基础将该第一预设阈值设置为32。
[0082]
当面积大于第三预设阈值的连通域的个数大于第一预设阈值时,说明已加载内容较多,加载进度较大,页面加载进度分类器输出分类号t01;当面积大于第三预设阈值的连通域的个数小于或等于第一预设阈值时,说明已加载内容较少,加载进度较小,页面加载进度分类器输出分类号t02。
[0083]
本实施例中的页面加载进度分类器针对页面加载中间态做进一步的分类,采用图像连通域算法对加载中间态的页面进一步精细化分类,便于对加载中的页面更精准的定位,从而确定等待时间。
[0084]
为了对本实施例的可行性进行验证,对相同测试设备上的同一应用程序分别采用以下三种方案的测试脚本进行测试:
[0085]
1、脚本仅包含各测试步骤的代码,没有等待时间的设定。
[0086]
2、脚本包含各测试步骤的代码,且根据网络情况将各步骤之间的等待时间设置为5秒到10秒之间。
[0087]
3、脚本包含各测试步骤的代码,且采用本实施例提供的动态设置脚本各测试步骤之间的等待时间。
[0088]
对上述每种脚本分别执行30次测试,比较脚本执行成功率及执行时间从而分析上述三种方案的优劣。
[0089]
首先比较上述三种测试方案的成功率,通过表2可以看出在网络环境较差的情况下,方案一不加等待时间处理的脚本健壮性非常差,平均执行成功率只有6.7%左右。利用本实施例设计的脚本健壮性最强,成功率最高。
[0090]
表2比较三种方案的测试脚本执行成功率表
[0091] 第一种方案第二种方案第三种方案成功(次)22629失败(次)2841成功率6.7%86.7%96.7%
[0092]
对方案二和方案三中执行成功的执行时间进行比较。方案二共成功执行26次,各次成功执行脚本所用时间如表3所示,平均成功执行脚本所用时间为55.2秒。
[0093]
表3方案二各次成功执行脚本所用的时间(秒)表
[0094]
第n次1234567891011121314耗时54.2555.6654.2356.5454.8754.4955.4655.2754.8554.5255.8354.2756.8854.02第n次151617181920212223242526
ꢀꢀ
耗时55.4354.8256.4354.2954.4655.1256.8655.4554.8356.0854.4655.71
ꢀꢀ
[0095]
方案三共成功执行29次,各次成功执行脚本所用时间如表4所示,平均成功执行脚本所用时间为36秒。
[0096]
表4方案三各次成功执行脚本所用的时间(秒)表
[0097]
第n次1234567891011121314耗时34.2637.6135.2537.5436.8635.4536.8237.2134.8935.2434.5236.837.7435.82第n次1516171819202122232425262728耗时36.4135.8537.2834.7235.837.2935.8234.0537.8635.7235.234.7537.4134.82第n次29
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
耗时36.14
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
[0098]
通过对上述两种测试方案执行时间的比较,可以看出仅在执行15步操作的测试脚本中方案三的测试执行效率比方案二单次节省了近20秒。在实际移动应用自动化测试过程中,测试步骤及测试次数将远远高于本次实验,由此可见本实施例大大提高了测试脚本的健壮性及测试执行效率。
[0099]
下面对本发明提供的自动化测试脚本执行装置进行描述,下文描述的自动化测试脚本执行装置与上文描述的自动化测试脚本执行方法可相互对应参照。
[0100]
如图4所示,该装置包括图像获取模块401、进度获取模块402、时长获取模块403和测试执行模块404,其中:
[0101]
图像获取模块401用于在执行应用程序的当前测试步骤对应的自动化测试脚本后,获取所述应用程序的当前页面的图像;
[0102]
进度获取模块402用于在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度;
[0103]
时长获取模块403用于根据所述当前页面的加载进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长;
[0104]
测试执行模块404用于在所述本次等待时长过后,重新获取所述应用程序的当前页面的图像,根据重新获取的图像确定所述当前页面的加载状态,直到所述当前页面的加载状态为加载成功,执行所述下一个测试步骤对应的自动化测试脚本。
[0105]
本实施例通过根据当前测试步骤对应的自动化测试脚本执行后的当前测试页面的图像分析当前页面的加载状态,在判断当前页面处于中间状态的基础上,进一步根据当前页面的加载进度动态调整下一个测试步骤对应的自动化测试脚本的等待时间窗口,从而保证自动化测试过程中合理安排下一测试步骤的等待时长,提高测试效率,降低资源消耗。
[0106]
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communications interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行自动化测试脚本执行方法,该方法包括:在执行应用程序的当前测试步骤对应的自动化测试脚本后,获取所述应用程序的当前页面的图像;在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度;根据所述当前页面的加载进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长;在所述本次等待时长过后,重新获取所述应用程序的当前页面的图像,根据重新获取的图像确定所述当前页面的加载状态,直到所述当前页面的加载状态为加载成功,执行所述下一个测试步骤对应的自动化测试脚本。
[0107]
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0108]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的自动化测试脚本执行方法,该方法包括:在执行应用程序的当前测试步骤对应的自动化测试脚本后,获取所述应用程序的当前页面的图像;
在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度;根据所述当前页面的加载进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长;在所述本次等待时长过后,重新获取所述应用程序的当前页面的图像,根据重新获取的图像确定所述当前页面的加载状态,直到所述当前页面的加载状态为加载成功,执行所述下一个测试步骤对应的自动化测试脚本。
[0109]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的自动化测试脚本执行方法,该方法包括:在执行应用程序的当前测试步骤对应的自动化测试脚本后,获取所述应用程序的当前页面的图像;在根据所述图像确定所述当前页面的加载状态为中间状态的情况下,根据所述图像获取所述当前页面的加载进度;根据所述当前页面的加载进度,获取所述当前测试步骤的下一个测试步骤的本次等待时长;在所述本次等待时长过后,重新获取所述应用程序的当前页面的图像,根据重新获取的图像确定所述当前页面的加载状态,直到所述当前页面的加载状态为加载成功,执行所述下一个测试步骤对应的自动化测试脚本。
[0110]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0111]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0112]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1