CN102902625A - 软件性能测试系统和方法 - Google Patents

软件性能测试系统和方法 Download PDF

Info

Publication number
CN102902625A
CN102902625A CN2012104590386A CN201210459038A CN102902625A CN 102902625 A CN102902625 A CN 102902625A CN 2012104590386 A CN2012104590386 A CN 2012104590386A CN 201210459038 A CN201210459038 A CN 201210459038A CN 102902625 A CN102902625 A CN 102902625A
Authority
CN
China
Prior art keywords
interface image
software
tested software
image
test
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.)
Granted
Application number
CN2012104590386A
Other languages
English (en)
Other versions
CN102902625B (zh
Inventor
官建军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201210459038.6A priority Critical patent/CN102902625B/zh
Publication of CN102902625A publication Critical patent/CN102902625A/zh
Application granted granted Critical
Publication of CN102902625B publication Critical patent/CN102902625B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种软件性能测试系统和方法。该系统包括:被测软件的运行界面显示设备、测试设备以及一个或多个摄像设备,其中,所述摄像设备适于对被测软件的运行界面中的全部区域或部分区域进行摄像,得到被测软件的运行界面图像;所述测试设备包括:测试控制单元;图像比较单元;时间间隔计算单元,适于在所述图像比较单元确定所述被测软件的运行界面图像与预先存储的结束界面图像匹配时,记录当前时间为测试结束时间点,计算测试结束时间点与测试开始时间点之间的时间间隔。本发明的技术方案能够解决目前在测试软件性能时存在的通用性差、无法真实反映用户体验,或效率低下、耗费人力过多的问题。

Description

软件性能测试系统和方法
技术领域
本发明涉及软件测试领域,具体涉及一种软件性能测试系统和方法。
背景技术
在软件测试中,经常需要评测软件可视部分的性能指标,例如程序的启动速度或访问某一网页的速度等。目前常用的测试方式有如下两种:
第一种方式仅适用于被测软件有源代码的情况。在这种方式中,可以在源代码中表示开始和结束的位置分别打印标记,根据开始标记和结束标记运行时的时间间隔来计算软件的运行时间,从而反映软件的性能指标。在这种方式中,实际测试的是代码加载的时间间隔,但是,由于软件的界面渲染是由负责显示的硬件完成的,硬件从代码中获取到数据,再根据数据进行渲染的过程是需要耗费一定时间的。而用户看到的实际上是渲染后的结果,因此,通过第一种方式由于无法计算出硬件渲染的时间,因此,无法真实地反映出用户的等待时间,从而也与用户真实使用软件时的感受有差距。而且这种方式只能适用于有源代码的软件,通用性较差。
第二种方式可以适用于没有源代码的被测软件。在这种方式中,完全通过人工掐表的方式来计算软件的运行时间。这种方式虽然通用性较强,但是,完全由人工实现,导致效率低下,需要耗费过多的人力。
由此可见,目前在测试软件性能时,存在着通用性差、无法真实反映用户体验,或效率低下、耗费人力过多的缺陷。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的软件性能测试系统和方法。
依据本发明的一个方面,提供了一种软件性能测试系统,其包括被测软件的运行界面显示设备、测试设备以及一个或多个摄像设备,其中,摄像设备适于对被测软件的运行界面中的全部区域或部分区域进行摄像,得到被测软件的运行界面图像;所述测试设备包括:测试控制单元,适于向被测软件发送开始运行指令,记录被测软件开始运行的时间为测试开始时间点;图像比较单元,适于从测试开始时间点开始接收由摄像设备发来的被测软件的运行界面图像,比较接收到的被测软件的运行界面图像与预先存储的结束界面图像是否匹配;时间间隔计算单元,适于在图像比较单元确定被测软件的运行界面图像与预先存储的结束界面图像匹配时,记录当前时间为测试结束时间点,计算测试结束时间点与测试开始时间点之间的时间间隔。
可选地,该测试设备进一步包括:存储单元,适于存储结束界面图像,该结束界面图像通过预先运行被测软件,由摄像设备或截屏软件捕获被测软件运行结束时所显示的界面中的全部区域或部分区域的图像而获得。
可选地,图像比较单元适于计算被测软件的运行界面图像与预先存储的结束界面图像之间的相似度得分,当相似度得分满足预设的相似度阈值时,确定被测软件的运行界面图像与预先设置的结束界面图像匹配。
可选地,该测试设备进一步包括:设置单元,适于根据测试环境设置相似度阈值。
可选地,摄像设备每隔预设的时间间隔采集一次被测软件的运行界面图像,其中,预设的时间间隔由摄像设备的帧率确定。
依据本发明的另一方面,提供了一种软件性能测试方法,包括:向被测软件发送开始运行指令,记录被测软件开始运行的时间为测试开始时间点;从测试开始时间点开始接收由摄像设备发来的被测软件的运行界面图像,比较接收到的被测软件的运行界面图像与预先存储的结束界面图像是否匹配;在确定被测软件的运行界面图像与预先存储的结束界面图像匹配时,记录当前时间为测试结束时间点,计算测试结束时间点与测试开始时间点之间的时间间隔;其中,预先存储的结束界面图像通过如下步骤获得:预先运行被测软件,由摄像设备或截屏软件捕获被测软件运行结束时所显示的界面中的全部区域或部分区域的图像,作为结束界面图像。
可选地,比较被测软件的运行界面图像与预先存储的结束界面图像的步骤进一步包括:计算被测软件的运行界面图像与预先存储的结束界面图像之间的相似度得分,当相似度得分满足预设的相似度阈值时,确定被测软件的运行界面图像与预先设置的结束界面图像匹配。
可选地,预设的相似度阈值根据测试环境进行设置。
根据本发明的测试系统和测试方法,通过测试控制单元控制被测软件开始运行,并在图像比较单元经过比较发现摄像设备发来的被测软件运行界面图像与预先存储的结束界面图像匹配时,确定被测软件运行结束,从而由时间间隔计算单元计算出被测软件的运行时间。由此解决了目前在测试软件性能时,存在着通用性差、无法真实反映用户体验,或效率低下、耗费人力过多的缺陷的问题,取得了通用性强、能够真实反映用户体验,且更加高效的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的软件性能的测试设备的结构图;
图2示出了根据本发明一个实施例的测试设备与其他设备之间的结构图;
图3a示出了本发明一个实施例中摄像设备捕获被测软件运行结束时所显示的界面中的全部区域作为结束界面图像时的示意图;
图3b示出了本发明一个实施例中摄像设备捕获被测软件运行结束时所显示的界面中的部分区域作为结束界面图像时的示意图;
图4示出了本发明一个实施例中点击浏览器图标时的显示界面的示意图;
图5示出了本发明一个实施例中的移动终端运行过程中所显示的界面的变化情况;
图6示出了根据本发明一个实施例的软件性能测试系统的结构图;
图7示出了根据本发明一个实施例的软件性能测试方法的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了本发明实施例提供的软件性能的测试设备100的结构图。如图1所示,该测试设备100包括:测试控制单元11、图像比较单元12以及时间间隔计算单元13。
在需要测试被测软件的软件性能时,由测试控制单元11向被测软件发送开始运行指令,记录被测软件开始运行的时间为测试开始时间点。图像比较单元12从该测试开始时间点开始接收由摄像设备发来的被测软件的运行界面图像,比较接收到的被测软件的运行界面图像与预先存储的结束界面图像是否匹配。时间间隔计算单元13在图像比较单元12确定被测软件的运行界面图像与预先存储的结束界面图像匹配时,记录当前时间为测试结束时间点,计算测试结束时间点与测试开始时间点之间的时间间隔。该时间间隔即为被测软件的运行时间,反映了被测软件的软件性能。
上述的摄像设备可以是独立于测试设备100的一个单独的设备,或者,也可以是包含在测试设备100内部的一个单元。该摄像设备可以每隔预设的时间间隔采集一次被测软件的运行界面图像,其中,该预设的时间间隔由该摄像设备的帧率确定。
可选地,测试设备100进一步包括存储单元(图中未示出)。存储单元用于存储上述的结束界面图像,该结束界面图像通过预先运行被测软件,由摄像设备或截屏软件捕获被测软件运行结束时所显示的界面中的全部区域或部分区域的图像而获得。
可选地,图像比较单元12计算被测软件的运行界面图像与预先存储的结束界面图像之间的相似度得分,当相似度得分满足预设的相似度阈值时,确定被测软件的运行界面图像与预先设置的结束界面图像匹配。其中,为了对相似度阈值进行设置,该测试设备还可以进一步包括设置单元(图中未示出)。该设置单元用于根据测试环境设置上述的相似度阈值。
根据本发明的测试设备,通过测试控制单元控制被测软件开始运行,并在图像比较单元经过比较发现摄像设备发来的被测软件运行界面图像与预先存储的结束界面图像匹配时,确定被测软件运行结束,从而由时间间隔计算单元计算出被测软件的运行时间。由此解决了目前在测试软件性能时,存在着通用性差、无法真实反映用户体验,或效率低下、耗费人力过多的缺陷的问题,取得了通用性强、能够真实反映用户体验,且更加高效的有益效果。
下面根据本发明的一个实施例,详细描述一下该测试设备的具体工作示例。
图2示出了本实施例中的测试设备100与其他设备之间的结构图。图2中除了测试设备100外,还包括与测试设备100相连的摄像设备200,以及与测试设备100相连的移动终端301和/或固定终端302。其中,移动终端301和固定终端302统称为被测软件的运行界面显示设备。具体地,移动终端301例如可以是手机,固定终端302例如可以是台式机。图2中的测试设备100可以通过一台PC机实现。从图中可以看出,测试设备100与移动终端301之间的连线为实线,其表示测试设备100与移动终端301直接相连;测试设备100与固定终端302之间的连线为虚线,其表示测试设备100与固定终端302间接相连。由此可见,测试设备100与被测软件的运行界面显示设备可以通过直接或间接方式相连,只要能够实现通信目的即可。
在本实施例中,以测试设备100测试移动终端301上的软件性能为例进行说明。
首先,需要调整摄像设备200的位置,以便摄像设备200与移动终端301的显示界面对准。还需要预先准备好移动终端301上的被测软件的结束界面图像,该结束界面图像是被测软件的某个运行阶段结束时所显示的图像。例如,以移动终端上安装的360浏览器软件为例,假设需要测试的是360浏览器的启动速度,该启动速度反映了从用户点击手机屏幕上的浏览器图标,直到浏览器的主界面显示出来的时间。因此,这时的结束界面图像就是浏览器启动完成后的主界面,如图3a所示。具体获取结束界面图像时,由测试设备100预先控制移动终端301上的被测软件(360浏览器)运行,相当于用户点击屏幕上的浏览器图标的启动,并控制摄像设备200捕获被测软件运行结束时所显示的界面中的全部区域(图3a中显示的区域)作为结束界面图像。或者,为了降低后续的匹配过程中的计算量,也可以仅捕获被测软件运行结束时所显示的界面中的部分区域(图3b中显示的区域)作为结束界面图像。该结束界面图像可以存储在测试设备100的存储单元内。另外,在捕获结束界面图像时,也可以用截屏软件来代替摄像设备200进行捕获,这两种方式各有优势:通过摄像设备200捕获的结束界面图像与用户看到的图像相同,因而更加接近用户的感受;通过截屏软件捕获的结束界面图像不受外部环境(例如灯光、距离)的影响,因而更加清晰。
然后,由测试设备100中的测试控制单元向被测软件发送开始运行指令,记录被测软件开始运行的时间为测试开始时间点。仍然以被测软件为360浏览器来说,测试控制单元向被测软件发送开始运行指令,相当于发送一个点击手机屏幕上的360浏览器图标的指令。其中,点击浏览器图标时的显示界面如图4所示。测试控制单元将图4中的浏览器图标被点击的时刻作为测试开始时间点记录下来,该时刻以T1表示。
在测试控制单元发送开始运行指令的同时,控制图像比较单元从测试开始时间点T1开始接收由摄像设备200发来的被测软件的运行界面图像,比较接收到的被测软件的运行界面图像与上述存储的结束界面图像是否匹配。
在这一过程中,摄像设备200从时间点T1开始,每隔预设的时间间隔就采集一次被测软件的运行界面图像,并将采集到的运行界面图像发送给图像比较单元,由图像比较单元对刚刚接收到结束界面图像进行比较。其中,该预设的时间间隔由摄像设备的帧率确定:假如摄像设备的帧率是30帧/秒,即一秒种摄取30帧图像,每帧图像之间的时间间隔为33.3毫秒,因此,预设的时间间隔就是33.3毫秒;假如摄像设备的帧率是100帧/秒,即一秒种摄取100帧图像,每帧图像之间的时间间隔为10毫秒,因此,预设的时间间隔就是10毫秒。由此可见,摄像设备的帧率决定了本实施例中得到的测试结果的精度,帧率越大,测试精度越高,但相应的数据传输量和计算量也越大。因此,在实际情况中,可以根据具体的测试精度要求来选择合适帧率的摄像设备。
图像比较单元每次接收到上述的摄像设备200发来的被测软件的运行界面图像后,比较本次接收到的被测软件的运行界面图像与预先存储的结束界面图像是否匹配。具体实现时,图像比较单元可以通过一定的相似度算法计算本次接收到的被测软件的运行界面图像与预先存储的结束界面图像之间的相似度得分,当相似度得分不满足预设的相似度阈值时,确定本次接收到的被测软件的运行界面图像与预先设置的结束界面图像不匹配,继续对下次接收的运行界面图像进行计算;直到接收到的被测软件的运行界面图像与预先存储的结束界面图像之间的相似度得分满足预设的相似度阈值时,确定本次接收到的被测软件的运行界面图像与预先设置的结束界面图像匹配。其中,相似度算法也可以称为模式匹配算法,该算法可以使用开源的库OpenCV(网址为www.opencv.org.cn)实现,由于该库已经被广泛应用,因此稳定性和比较效率都很高。当然,也可以根据需要选择其他的相似度算法,只要能够实现匹配目的即可。
其中,在上述过程中,相似度阈值是由测试设备100内部的设置单元根据测试环境设置的一个0到1之间的数值,在设置时,通常需要综合考虑光线、距离等诸多因素。当光线较好且距离较近时,设置的相似度阈值较大;当光线较差且距离较远时,设置的相似度阈值较小。例如,相似度为0.99相当于大小,颜色,轮廓完全一样;相似度为0.5相当于形状一样,但大小可以更小或更大,颜色可以有误差。通过相似度阈值的合理设置,可以准确地确定出与结束界面图像匹配的运行界面图像,从而找到被测软件的运行结束时间点。设置相似度阈值的具体原因在于:测试设备捕获结束界面图像时有可能是由截屏软件直接从软件界面中截取的,而不是像运行界面图像那样是由摄像设备拍摄的,由此导致二者之间存在偏差。即使结束界面图像是像运行界面图像那样由摄像设备拍摄的,但由于拍摄时的光线、距离等方面的差异,也会导致二者之间存在偏差,因此,如果采用精确匹配(例如逐像素比较)的方式很可能导致匹配失败,因此,本实施例中采用模式识别技术可以很好地解决这一问题。
当上述的图像比较单元确定本次接收到的被测软件的运行界面图像与预先存储的结束界面图像匹配时,通知时间间隔计算单元记录当前时间为测试结束时间点T2,并计算测试结束时间点T2与测试开始时间点T1之间的时间间隔(T2-T1)。在本实施例中,预先存储的结束界面图像如图3a所示,因此,当图像比较单元确定本次接收到的被测软件的运行界面图像与预先存储的结束界面图像匹配时,说明移动终端301上当前显示的运行界面图像与图3a所示的图像满足设定的相似度阈值,因而表示移动终端301当前已经完成了360浏览器的启动,成功加载了图3a所示的界面。因此,T2-T1得到的数值就反映了360浏览器的启动时间,该启动时间反映了用户在打开360浏览器时的等待时间。
图5示出了在本实施例中的移动终端301运行过程中所显示的界面的变化情况。其中,图5中第一幅图(子图1)表示刚刚点击360浏览器时所显示的界面,即在开始时间点T1所显示的界面。第二幅图(子图2)表示从T1开始经过了一段时间,由摄像设备捕获了数帧图像后移动终端301所显示的界面,该界面是360浏览器加载过程中的中间界面,因此必然与结束界面图像不匹配。第三幅图(子图3)表示又经过了一段时间后,由摄像设备捕获了数帧图像后移动终端301所显示的界面,该界面也是360浏览器加载过程中的中间界面,与第二幅图相比更接近结束界面图像,但依然与结束界面图像不匹配。第四幅图(子图4)表示在图像比较单元确定本次接收到的图像与结束界面图像匹配时所显示的界面,也就是在结束时间点T2时所显示的界面,从图中可以看出,第四幅图与图3a最为接近,表示360浏览器加载成功。
除了测试软件的启动速度外,本实施例提供的方式还可以测试软件的其他性能,例如向用户呈现某个网页的速度等。
本实施例提供的测试设备,能够控制摄像设备从被测软件启动后开始捕获软件的运行界面图像,并与预先存储的结束界面图像比较,从而确定出软件运行的结束时间点,由此测试软件的性能。由于本实施例中是由摄像设备来摄取被测软件的运行界面的,而摄像设备与用户所处的视角完全相同,因此,非常贴近用户的感受,能够切实从用户的角度出发,测量到用户所感受到的软件运行时间。而且,本实施例中的摄像设备由测试设备控制,且测试设备能够自动地对接收到的运行界面图像进行匹配比较,由此提高了测试效率,避免了繁琐的人工操作。
另外,本实施例中的测试设备可用于测试任何有界面的软件的性能,无论该软件有无源代码,因此,提高了该方法的通用性。而且,由于本实施例中采用模式识别的方法进行匹配比较,可以自行设置相似度阈值,所以预先准备的结束界面图像可以重复使用,例如,如果本次测试时由于环境限制导致摄像设备摄取的图像不够清楚,可以把相似度阈值调低,从而照常实现自动化测试的目的。
图6示出了本发明实施例提供的一种软件性能测试系统。该测试系统包括:被测软件的运行界面显示设备300、如上述实施例描述的测试设备100以及一个或多个摄像设备200。
其中,摄像设备200适于根据测试设备100的控制对被测软件的运行界面中的全部区域或部分区域进行摄像,得到被测软件的运行界面图像。具体地,摄像设备可以每隔预设的时间间隔采集一次被测软件的运行界面图像,其中,预设的时间间隔由该摄像设备的帧率确定。具体地,摄像设备200获取运行界面图像的方式可参照上一实施例中的描述此处不再赘述。
另外,本实施例中的测试设备100进一步包括测试控制单元11、图像比较单元12和时间间隔计算单元13。可选地,测试设备100还可以包括存储单元和设置单元。上述各个单元的具体工作过程可参照上一实施例中的描述,此处不再赘述。
被测软件的运行界面显示设备300可以是移动终端或固定终端等能够运行被测软件并显示软件界面的设备。
图7示出了本发明实施例提供的一种软件性能测试方法的流程图。该方法始于步骤S710,在步骤S710中,向被测软件发送开始运行指令,记录被测软件开始运行的时间为测试开始时间点。其中,步骤S710可由测试设备100中的测试控制单元执行,具体的执行过程可参照测试设备实施例中的描述。
执行完步骤S710之后,在步骤S720中,从测试开始时间点开始接收由摄像设备发来的被测软件的运行界面图像,比较接收到的被测软件的运行界面图像与预先存储的结束界面图像是否匹配。其中,步骤S720可由测试设备100中的图像比较单元执行,具体的执行过程可参照测试设备实施例中的描述。
可选地。比较被测软件的运行界面图像与预先存储的结束界面图像的步骤进一步包括:计算被测软件的运行界面图像与预先存储的结束界面图像之间的相似度得分,当相似度得分满足预设的相似度阈值时,确定被测软件的运行界面图像与预先设置的结束界面图像匹配。其中,相似度阈值的设置以及相似度得分的确定过程也可以参照测试设备实施例中的描述实现。
当确定被测软件的运行界面图像与预先存储的结束界面图像匹配时,执行步骤S730。在步骤S730中,记录当前时间为测试结束时间点,计算测试结束时间点与测试开始时间点之间的时间间隔。其中,步骤S730可由测试设备100中的时间间隔计算单元执行,具体的执行过程可参照测试设备实施例中的描述。
另外,在步骤S710之前,还可以进一步包括一个预先存储结束界面图像的步骤。具体实现时,预先运行被测软件,由摄像设备或截屏软件捕获被测软件运行结束时所显示的界面中的全部区域或部分区域的图像,作为结束界面图像。其中,结束界面图像的具体获取方式也可参照测试设备实施例中的描述实现。
本发明提供的测试系统和相应的方法,能够控制摄像设备从被测软件启动后开始捕获软件的运行界面图像,并与预先存储的结束界面图像比较,从而确定出软件运行的结束时间点,由此测试软件的性能。由于本实施例中是由摄像设备来摄取被测软件的运行界面的,而摄像设备与用户所处的视角完全相同,因此,非常贴近用户的感受,能够切实从用户的角度出发,测量到用户所感受到的软件运行时间。而且,本实施例中的摄像设备由测试设备控制,且测试设备能够自动地对接收到的运行界面图像进行匹配比较,由此提高了测试效率,避免了繁琐的人工操作。另外,本实施例中的测试系统和方法可用于测试任何有界面的软件的性能,无论该软件有无源代码,因此,提高了该方法的通用性。而且,由于本实施例中采用模式识别的方法进行匹配比较,可以自行设置相似度阈值,所以预先准备的结束界面图像可以重复使用,例如,如果本次测试时由于环境限制导致摄像设备摄取的图像不够清楚,可以把相似度阈值调低,从而照常实现自动化测试的目的。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的测试系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (8)

1.一种软件性能测试系统,包括:被测软件的运行界面显示设备、测试设备以及一个或多个摄像设备,其中,
所述摄像设备适于对被测软件的运行界面中的全部区域或部分区域进行摄像,得到被测软件的运行界面图像;
所述测试设备包括:
测试控制单元,适于向被测软件发送开始运行指令,记录被测软件开始运行的时间为测试开始时间点;
图像比较单元,适于从所述测试开始时间点开始接收由摄像设备发来的被测软件的运行界面图像,比较接收到的所述被测软件的运行界面图像与预先存储的结束界面图像是否匹配;
时间间隔计算单元,适于在所述图像比较单元确定所述被测软件的运行界面图像与预先存储的结束界面图像匹配时,记录当前时间为测试结束时间点,计算测试结束时间点与测试开始时间点之间的时间间隔。
2.如权利要求1所述的测试系统,所述测试设备还包括:
存储单元,适于存储结束界面图像,该结束界面图像通过预先运行被测软件,由摄像设备或截屏软件捕获被测软件运行结束时所显示的界面中的全部区域或部分区域的图像而获得。
3.如权利要求1-2中任一个所述的测试系统,所述图像比较单元适于计算所述被测软件的运行界面图像与预先存储的结束界面图像之间的相似度得分,当所述相似度得分满足预设的相似度阈值时,确定所述被测软件的运行界面图像与预先设置的结束界面图像匹配。
4.如权利要求3所述的测试系统,所述测试设备还包括:
设置单元,适于根据测试环境设置所述相似度阈值。
5.如权利要求1至4中任一项所述的测试系统,所述摄像设备每隔预设的时间间隔采集一次被测软件的运行界面图像,其中,所述预设的时间间隔由所述摄像设备的帧率确定。
6.一种软件性能测试方法,包括:
向被测软件发送开始运行指令,记录被测软件开始运行的时间为测试开始时间点;
从所述测试开始时间点开始接收由摄像设备发来的被测软件的运行界面图像,比较接收到的所述被测软件的运行界面图像与预先存储的结束界面图像是否匹配;
在确定所述被测软件的运行界面图像与预先存储的结束界面图像匹配时,记录当前时间为测试结束时间点,计算测试结束时间点与测试开始时间点之间的时间间隔;
其中,所述预先存储的结束界面图像通过如下步骤获得:预先运行被测软件,由摄像设备或截屏软件捕获被测软件运行结束时所显示的界面中的全部区域或部分区域的图像,作为结束界面图像。
7.如权利要求6中所述的方法,比较所述被测软件的运行界面图像与预先存储的结束界面图像的步骤进一步包括:
计算所述被测软件的运行界面图像与预先存储的结束界面图像之间的相似度得分,当所述相似度得分满足预设的相似度阈值时,确定所述被测软件的运行界面图像与预先设置的结束界面图像匹配。
8.如权利要求7所述的方法,所述预设的相似度阈值根据测试环境进行设置。
CN201210459038.6A 2012-11-14 2012-11-14 软件性能测试系统和方法 Active CN102902625B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210459038.6A CN102902625B (zh) 2012-11-14 2012-11-14 软件性能测试系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210459038.6A CN102902625B (zh) 2012-11-14 2012-11-14 软件性能测试系统和方法

Publications (2)

Publication Number Publication Date
CN102902625A true CN102902625A (zh) 2013-01-30
CN102902625B CN102902625B (zh) 2015-04-22

Family

ID=47574870

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210459038.6A Active CN102902625B (zh) 2012-11-14 2012-11-14 软件性能测试系统和方法

Country Status (1)

Country Link
CN (1) CN102902625B (zh)

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103197944A (zh) * 2013-04-11 2013-07-10 腾讯科技(深圳)有限公司 一种应用程序的进程的性能确定方法和计算机系统
CN104077214A (zh) * 2013-03-26 2014-10-01 腾讯科技(深圳)有限公司 软件系统加载过程图像识别方法及系统
CN104090842A (zh) * 2014-07-15 2014-10-08 深圳市金立通信设备有限公司 一种应用程序运行的检测方法
CN104102582A (zh) * 2014-07-15 2014-10-15 深圳市金立通信设备有限公司 一种应用程序运行的检测装置及终端
CN104123221A (zh) * 2013-04-28 2014-10-29 腾讯科技(深圳)有限公司 响应时间的测试方法及装置
CN104394026A (zh) * 2014-10-08 2015-03-04 百度在线网络技术(北京)有限公司 网页加载时间的测量方法及装置
CN104461310A (zh) * 2013-09-12 2015-03-25 阿里巴巴集团控股有限公司 一种页面比对方法及系统
CN104536888A (zh) * 2014-12-24 2015-04-22 网易(杭州)网络有限公司 移动设备的游戏测试方法与系统
CN104679649A (zh) * 2013-11-29 2015-06-03 腾讯科技(深圳)有限公司 一种软件流畅度测试方法和测试装置
CN104834597A (zh) * 2015-03-06 2015-08-12 深信服网络科技(深圳)有限公司 应用响应时长的测量方法和系统
CN104866416A (zh) * 2014-02-25 2015-08-26 腾讯科技(深圳)有限公司 实现应用程序性能分析的方法和装置
CN104951392A (zh) * 2015-06-25 2015-09-30 上海卓易科技股份有限公司 一种测量应用程序启动时间的方法及装置
WO2015154517A1 (zh) * 2014-04-08 2015-10-15 安一恒通(北京)科技有限公司 一种软件故障的定位方法、装置及设备
CN105068930A (zh) * 2015-08-07 2015-11-18 天津市康凯特软件科技有限公司 移动终端测试生成数据的智能分析方法及装置
CN105183632A (zh) * 2015-07-21 2015-12-23 四川长虹电器股份有限公司 视频启播的自动化测试方法
CN106294161A (zh) * 2016-08-12 2017-01-04 北京奇虎科技有限公司 一种应用的界面功能测试方法和装置
CN106681898A (zh) * 2015-11-05 2017-05-17 广州市动景计算机科技有限公司 一种采集应用性能数据的方法及装置
CN106681928A (zh) * 2017-01-20 2017-05-17 百度在线网络技术(北京)有限公司 一种输入法面板弹出时间的测试方法及装置
CN106982368A (zh) * 2016-01-19 2017-07-25 腾讯科技(深圳)有限公司 视频响应速度检测方法和系统
CN107704385A (zh) * 2017-09-15 2018-02-16 天津大学 基于Appium的手机地图路况加载时延自动测试方法
CN108958073A (zh) * 2018-06-19 2018-12-07 珠海格力电器股份有限公司 一种利用实验大数据验证产品功能点逻辑的方法及电器
WO2019019356A1 (zh) * 2017-07-25 2019-01-31 上海壹账通金融科技有限公司 应用程序测试方法、装置、计算机设备和存储介质
CN109803046A (zh) * 2018-12-28 2019-05-24 惠州Tcl移动通信有限公司 智能终端性能测试的方法、智能终端及存储装置
CN109815947A (zh) * 2018-12-14 2019-05-28 深圳壹账通智能科技有限公司 应用的测试方法、装置和计算机设备
CN109976966A (zh) * 2017-12-27 2019-07-05 阿里巴巴集团控股有限公司 一种应用程序启动时间统计方法、装置及系统
CN110427929A (zh) * 2019-07-19 2019-11-08 易诚高科(大连)科技有限公司 一种基于多级元素融合的app界面模式识别方法
CN112446366A (zh) * 2019-08-29 2021-03-05 北京搜狗科技发展有限公司 一种图像翻译评测方法、装置和用于图像翻译评测的装置
CN115168193A (zh) * 2022-06-24 2022-10-11 广州掌动智能科技有限公司 软件性能测试和调优系统及其控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011073759A1 (en) * 2009-12-01 2011-06-23 Cinnober Financial Technology Ab Methods and systems for automatic testing of a graphical user interface
CN102279787A (zh) * 2010-06-08 2011-12-14 腾讯科技(深圳)有限公司 一种平均无故障时间的测试方法和装置
CN102624576A (zh) * 2011-01-27 2012-08-01 腾讯科技(深圳)有限公司 一种自动测试浏览器的网页下载时间的方法和系统
CN102662839A (zh) * 2012-03-29 2012-09-12 奇智软件(北京)有限公司 一种软件的界面状态变化时间的测试方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011073759A1 (en) * 2009-12-01 2011-06-23 Cinnober Financial Technology Ab Methods and systems for automatic testing of a graphical user interface
CN102279787A (zh) * 2010-06-08 2011-12-14 腾讯科技(深圳)有限公司 一种平均无故障时间的测试方法和装置
CN102624576A (zh) * 2011-01-27 2012-08-01 腾讯科技(深圳)有限公司 一种自动测试浏览器的网页下载时间的方法和系统
CN102662839A (zh) * 2012-03-29 2012-09-12 奇智软件(北京)有限公司 一种软件的界面状态变化时间的测试方法和装置

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104077214A (zh) * 2013-03-26 2014-10-01 腾讯科技(深圳)有限公司 软件系统加载过程图像识别方法及系统
CN104077214B (zh) * 2013-03-26 2018-02-27 腾讯科技(深圳)有限公司 软件系统加载过程图像识别方法及系统
CN103197944B (zh) * 2013-04-11 2014-11-05 腾讯科技(深圳)有限公司 一种应用程序的进程的性能确定方法和计算机系统
CN103197944A (zh) * 2013-04-11 2013-07-10 腾讯科技(深圳)有限公司 一种应用程序的进程的性能确定方法和计算机系统
CN104123221A (zh) * 2013-04-28 2014-10-29 腾讯科技(深圳)有限公司 响应时间的测试方法及装置
CN104461310B (zh) * 2013-09-12 2018-01-16 阿里巴巴集团控股有限公司 一种页面比对方法及系统
CN104461310A (zh) * 2013-09-12 2015-03-25 阿里巴巴集团控股有限公司 一种页面比对方法及系统
CN104679649A (zh) * 2013-11-29 2015-06-03 腾讯科技(深圳)有限公司 一种软件流畅度测试方法和测试装置
CN104679649B (zh) * 2013-11-29 2018-02-27 腾讯科技(深圳)有限公司 一种软件流畅度测试方法和测试装置
CN104866416B (zh) * 2014-02-25 2019-08-23 腾讯科技(深圳)有限公司 实现应用程序性能分析的方法和装置
CN104866416A (zh) * 2014-02-25 2015-08-26 腾讯科技(深圳)有限公司 实现应用程序性能分析的方法和装置
US9983987B2 (en) 2014-04-08 2018-05-29 Iyuntian Co., Ltd. Method, apparatus, and device for locating a software failure
WO2015154517A1 (zh) * 2014-04-08 2015-10-15 安一恒通(北京)科技有限公司 一种软件故障的定位方法、装置及设备
CN104102582A (zh) * 2014-07-15 2014-10-15 深圳市金立通信设备有限公司 一种应用程序运行的检测装置及终端
CN104090842A (zh) * 2014-07-15 2014-10-08 深圳市金立通信设备有限公司 一种应用程序运行的检测方法
CN104394026A (zh) * 2014-10-08 2015-03-04 百度在线网络技术(北京)有限公司 网页加载时间的测量方法及装置
CN104536888A (zh) * 2014-12-24 2015-04-22 网易(杭州)网络有限公司 移动设备的游戏测试方法与系统
CN104834597B (zh) * 2015-03-06 2017-12-26 深信服网络科技(深圳)有限公司 应用响应时长的测量方法和系统
CN104834597A (zh) * 2015-03-06 2015-08-12 深信服网络科技(深圳)有限公司 应用响应时长的测量方法和系统
CN104951392A (zh) * 2015-06-25 2015-09-30 上海卓易科技股份有限公司 一种测量应用程序启动时间的方法及装置
CN105183632A (zh) * 2015-07-21 2015-12-23 四川长虹电器股份有限公司 视频启播的自动化测试方法
CN105068930A (zh) * 2015-08-07 2015-11-18 天津市康凯特软件科技有限公司 移动终端测试生成数据的智能分析方法及装置
CN106681898A (zh) * 2015-11-05 2017-05-17 广州市动景计算机科技有限公司 一种采集应用性能数据的方法及装置
CN106982368A (zh) * 2016-01-19 2017-07-25 腾讯科技(深圳)有限公司 视频响应速度检测方法和系统
CN106982368B (zh) * 2016-01-19 2020-06-23 腾讯科技(深圳)有限公司 视频响应速度检测方法和系统
CN106294161A (zh) * 2016-08-12 2017-01-04 北京奇虎科技有限公司 一种应用的界面功能测试方法和装置
CN106681928A (zh) * 2017-01-20 2017-05-17 百度在线网络技术(北京)有限公司 一种输入法面板弹出时间的测试方法及装置
WO2019019356A1 (zh) * 2017-07-25 2019-01-31 上海壹账通金融科技有限公司 应用程序测试方法、装置、计算机设备和存储介质
CN107704385A (zh) * 2017-09-15 2018-02-16 天津大学 基于Appium的手机地图路况加载时延自动测试方法
CN109976966A (zh) * 2017-12-27 2019-07-05 阿里巴巴集团控股有限公司 一种应用程序启动时间统计方法、装置及系统
CN108958073A (zh) * 2018-06-19 2018-12-07 珠海格力电器股份有限公司 一种利用实验大数据验证产品功能点逻辑的方法及电器
CN108958073B (zh) * 2018-06-19 2020-10-20 珠海格力电器股份有限公司 一种利用实验大数据验证产品功能点逻辑的方法及电器
CN109815947A (zh) * 2018-12-14 2019-05-28 深圳壹账通智能科技有限公司 应用的测试方法、装置和计算机设备
CN109803046A (zh) * 2018-12-28 2019-05-24 惠州Tcl移动通信有限公司 智能终端性能测试的方法、智能终端及存储装置
CN110427929A (zh) * 2019-07-19 2019-11-08 易诚高科(大连)科技有限公司 一种基于多级元素融合的app界面模式识别方法
CN112446366A (zh) * 2019-08-29 2021-03-05 北京搜狗科技发展有限公司 一种图像翻译评测方法、装置和用于图像翻译评测的装置
CN115168193A (zh) * 2022-06-24 2022-10-11 广州掌动智能科技有限公司 软件性能测试和调优系统及其控制方法
CN115168193B (zh) * 2022-06-24 2023-02-24 广州掌动智能科技有限公司 软件性能测试和调优系统及其控制方法

Also Published As

Publication number Publication date
CN102902625B (zh) 2015-04-22

Similar Documents

Publication Publication Date Title
CN102902625A (zh) 软件性能测试系统和方法
CN102929782A (zh) 软件性能的测试设备及测试方法
US20140211021A1 (en) Test system for evaluating mobile device and driving method thereof
US20130086560A1 (en) Processing automation scripts of software
CN103634592A (zh) 智能电视自动化测试方法及系统
CN102662839A (zh) 一种软件的界面状态变化时间的测试方法和装置
US20150074650A1 (en) Multivariate a/b testing of mobile applications
CN106295353B (zh) 一种引擎漏洞检测的方法以及检测装置
CN103237108B (zh) 用于移动终端的测试方法和测试终端
CN106126424A (zh) 一种脚本可视化的自动化测试方法、装置和移动终端
CN106648685A (zh) 智能终端系统应用的处理方法、装置及智能终端
CN106294161A (zh) 一种应用的界面功能测试方法和装置
CN103049373A (zh) 一种崩溃的定位方法和装置
US20200150414A1 (en) Determining an error in a moving distance of a microscope
CN113268416A (zh) 一种应用程序的测试方法、装置、存储介质及终端
CN109558297A (zh) 内存管理方法及装置
US20130241803A1 (en) Screen sharing apparatus, screen sharing method and screen sharing program
CN111581096A (zh) 一种安卓系统终端设备的自动化测试方法
CN112783764B (zh) 应用程序的自动化测试方法及装置、存储介质、终端
CN107786869B (zh) 一种电视设备菜单路径生成方法、装置及存储介质
CN109144841B (zh) 广告应用的识别方法和装置、计算机设备和存储介质
CN103150222B (zh) 嵌入式系统异常恢复的方法和装置
CN116183172A (zh) 显示屏的异常检测方法以及系统
CN113127099B (zh) 服务器配置方法、装置、设备及存储介质
CN105306928A (zh) 一种测试机顶盒浏览器的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220720

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right