测试终端屏幕显示结果的方法和系统的制作方法

文档序号:6560153阅读:266来源:国知局
专利名称:测试终端屏幕显示结果的方法和系统的制作方法
技术领域
本发明涉及终端测试领域,尤其涉及一种测试终端屏幕显示结果的方法和系统。
背景技术
通信终端,特别是移动通信终端,通常都具有输入和输出装置,典型的为键盘和显示屏,其中显示屏一般采用点阵形式的LCD显示屏,在显示屏上显示用户界面,以提供用户操作的提示、显示用户操作的结果等信息。因此对于终端功能的测试的一个重要方法就是通过操作输入装置,同时观察输出装置的输出,从而确认终端的反应是否正确。
由于现代通信终端的功能日趋增多,以往通过手动按键、人工观察的测试方式日益暴露出工作量大,效率低,可重复性差的问题。为了解决这一问题,提出了多种自动化测试解决方案,这些方案的思路一般都是通过某种方式控制终端的输入,并且对终端显示屏的输出结果进行自动比对进行的。
在这些解决方案中对于输入装置的自动控制方法比较多,例如,通过在通信终端内部的软件中编写桩模块,然后通过各种通信手段控制该桩模块发出模拟按键的动作;或者通过控制某种机械装置模拟人手,直接在终端键盘上做出敲击键盘的动作等等,这些方法都可以比较好地完成对终端的输入控制功能,但是对于终端显示结果的判断方法则比较单一,一般都是通过获取屏幕图像、进行识别或者比较的方法进行。
参见图1,为现有的一种自动测试解决方案,在计算机上连接图像采集设备(如数码相机)和机械手指,此方案是通过计算机内的控制模块控制机械手指完成按键动作,使用图像采集设备拍摄通信终端屏幕上显示的图像,并把该图像信号输入到计算机内,由计算机内的图像处理模块进行处理,与预先存储在计算机内的标准屏幕图像进行比对,从而判断终端显示功能是否正常。
这种现有技术具有以下缺点1.图像采集设备与计算机进行图像数据传输时,数据传输量比较大,极大地影响了比对速度;2.系统复杂,在机械手之外还需要增加图像采集设备,以及专用的图像处理设备或者图像处理软件,所需要的成本也比较高,据初步估算,图像采集设备的价格大约在¥15000-¥42000之间,图像处理设备或者软件可能价格更高;3.实时拍摄的图像与标准图像之间可能存在垂直、水平及角度的偏差偏移,而且由于测试环境不同在亮度、阴影等方面也可能存在差异,如果使用的图像处理、对比算法性能不够好,可能造成误判,因此对于屏幕上的某一部分区域进行精确的结果比对存在困难。

发明内容
为了解决现有技术系统复杂、成本高、速度慢、准确度低以及局部区域显示结果比对困难的问题,本发明的目的在于提供一种简便易行、成本低廉、准确度高的测试终端屏幕显示结果的方法和系统。
本发明提供了一种测试终端屏幕显示结果的方法,包括以下步骤步骤A终端将屏幕显示结果转换成数据并保存;步骤B控制设备根据所述终端保存的屏幕显示结果数据获取需比对区域内的数据;步骤C所述控制设备将获取的需比对区域内的数据与控制设备内预存的需比对区域的正确显示结果对应的数据进行比对。
所述步骤B可以包括以下步骤步骤B1控制设备向所述终端发送获取需比对区域内数据的命令;步骤B2所述终端接收到所述命令后,从保存的屏幕显示结果数据中提取需比对区域内的数据,然后将所述提取出来的数据直接传输给所述控制设备或对所述提取出来的数据进行处理后传输给所述控制设备。
所述步骤B2中对所述提取出来的数据进行处理的步骤具体为采用哈希算法、循环冗余校验方法或压缩的方法对所述提取出来的数据进行运算。
所述步骤B还可以包括以下步骤步骤B1′所述终端将保存的屏幕显示结果数据直接传输给控制设备;步骤B2′所述控制设备接收到所述屏幕显示结果数据后,从所述屏幕显示结果数据中提取需比对区域内的数据。
所述步骤B还可以包括以下步骤步骤B1″所述终端先处理保存的屏幕显示结果数据然后传输给控制设备;步骤B2″所述控制设备接收到处理后的屏幕显示结果数据后,先还原出屏幕显示结果数据再提取需比对区域内的数据。
所述步骤B还可以包括以下步骤步骤B1所述终端先压缩保存的屏幕显示结果数据然后传输给控制设备;步骤B2所述控制设备接收到压缩后的屏幕显示结果数据后,先解压缩然后提取需比对区域内的数据。
所述提取需比对区域内的数据的步骤具体为首先生成需比对区域的掩码,然后将所述掩码与所述屏幕显示结果数据按照设定的规则进行操作得到需比对区域的数据。
本发明还提供了一种测试终端屏幕显示结果的系统,包括终端、获取模块和控制设备;所述终端包括存储模块,用于将屏幕显示结果转换成数据后保存;所述获取模块,用于从接收到的由所述终端发来的屏幕显示结果数据中获取需比对区域内的数据;所述控制设备包括比对模块,用于将接收到的由所述获取模块发来的需比对区域内的数据与控制设备内预存的需比对区域的正确显示结果的数据进行比对。
所述控制设备还可以包括命令模块,用于向所述获取模块发送获取需比对区域内数据的命令;此时所述获取模块在所述终端上,用于根据所述命令模块发来的命令从接收到的由所述存储模块发来的屏幕显示结果数据中获取需比对区域内的数据;相应地,所述终端还包括运算模块,用于对接收到的由所述获取模块发来的数据进行运算处理并转发给所述命令模块。
其中所述运算模块具体为哈希模块,用于对接收到的由所述获取模块发来的数据进行哈希计算并转发给所述命令模块;或者为循环冗余校验模块,用于采用循环冗余校验的方法对接收到的由所述获取模块发来的数据进行运算处理并转发给所述命令模块;或者为压缩模块,用于对接收到的由所述获取模块发来的数据进行压缩处理并转发给所述命令模块。
所述获取模块还可以在所述控制设备上。
当所述获取模块在所述控制设备上时,所述终端还可以包括压缩模块,用于对接收到的由所述存储模块发来的屏幕显示结果数据进行压缩处理;所述控制设备还可以包括解压缩模块,用于对接收到的由所述终端的压缩模块发来的数据进行解压缩还原成屏幕显示结果数据并发送给所述获取模块;所述获取模块,用于从接收到的由所述解压缩模块发来的屏幕显示结果数据中获取需比对区域内的数据。
所述获取模块可以为掩码模块,用于生成需比对区域的掩码,还用于将接收到的屏幕显示结果数据与生成的掩码按照设定的规则进行操作得到需比对区域的数据。
本发明的有益效果是1.不需要专门的图像采集和图像处理环节,有效地减少了处理环节,简化了系统,降低了成本;2.将终端屏幕实际显示图像用精确数据表示,不会因测试环境因素的影响而失真,可以对屏幕上的部分区域进行精确的结果比对;3.终端将屏幕显示图像的原始数据经过处理(如哈希运算、循环冗余校验或压缩)后再传输给控制设备时,大大减少了终端与控制设备之间的传输数据量,提高了比对速度。


图1是现有技术测试终端屏幕显示结果的系统示意图;图2是本发明实施例一测试终端屏幕显示结果的方法流程图;图3是本发明实施例二测试终端屏幕显示结果的方法流程图;图4是本发明实施例三测试终端屏幕显示结果的方法流程图;图5是本发明实施例四测试终端屏幕显示结果的系统结构示意图;图6是本发明实施例五测试终端屏幕显示结果的系统结构示意图;图7是本发明实施例六测试终端屏幕显示结果的系统结构示意图。
具体实施例方式
下面结合附图和具体实施例对本发明作进一步说明,但不作为对本发明的限定。
实施例一参见图2,本发明提供的测试终端屏幕显示的方法具体包括以下步骤步骤101终端在内部将屏幕显示结果转换成数据后保存,保存的数据实际上就是屏幕显示的结果以某种方式在内存中的映象;
以单色屏幕为例,屏幕上的每个象素点用1个比特位表示,“1”表示黑,“0”表示白,屏幕上的所有象素点的比特位按照一定顺序(如从上到下,从左到右)排列在一起,可以得到一个数组,这就是屏幕数据区,可以认为是一个虚拟屏幕;为了进一步提高效率,通常终端会在屏幕显示结果的同时在内部同步将该结果转换成数据后保存,当然在实际应用中有可能会不同步,但是不会影响测试的效果,因为可以通过控制设备控制在终端进行模拟按键的操作节奏来保证测试的正常进行,例如假设当前屏幕完成显示后过了一段时间才完成屏幕数据的保存,此时通过控制设备控制对终端的模拟按键动作在当前屏幕显示结果比对完成后进行,这样就不会出现当前比对操作还未完成,屏幕显示的结果已经发生变化的情况;步骤102控制设备向终端发送获取屏幕中需比对区域内数据的命令,要求终端提取屏幕数据区内需比对区域的数据并传输给控制设备,命令中可以指定需要传输的区域个数(一个或者多个)和该区域的范围;该命令通常使用函数的形式来实现,并且可以根据具体区域的形状不同来设置不同的参数,以需获取的区域为多个矩形区域为例说明如下GetDispMem(Count,(X1,Y1),(X2,Y2),(X3,Y3),(X4,Y4),…)其中Count代表需要获取矩形区域的数量,(X1,Y1)、(X2,Y2)代表第一个矩形区域的左上角顶点坐标和右下角顶点坐标;(X3,Y3)、(X4,Y4)代表第二个矩形区域的左上角顶点坐标和右下角顶点坐标,以此类推,总共描述Count个矩形区域的顶点坐标,上述两个顶点坐标也可以为左下角顶点坐标和右上角顶点坐标;上述命令比较简单,在实际应用中可能出现各种不规则的区域,就需要对上述命令进行一定的改进,如增加区域的顶点数目等等,以实现不规则区域显示结果的比较;步骤103终端接收到控制设备发送来的传输命令后,根据命令中指定的需比对的区域的个数和范围从终端保存的屏幕数据区的数据中提取需比对区域的数据;提取的方式有很多种,比较常见的是掩码方式,即首先为需比对的区域生成一个掩码图像,掩码图像中包括了当前需要比对的各个区域的轮廓剪影,然后将屏幕数据区的数据与生成的掩码图像的数据按照设定的规则进行掩码操作得到需比对区域的数据;掩码是位图中图像的一个单色剪影;以单色屏幕为例,对于掩码图像可以想象为一个和实际终端屏幕一样大小的图像,背景为白色,图像上有需提取区域的轮廓剪影,剪影内部为黑色,采用步骤101中同样的表示方法(即每个象素点用1个比特位表示,“1”表示黑,“0”表示白),则可以得到一个数组即掩码;
设定的规则有多种如按位“与”操作就是常见的一种,即把掩码和屏幕数据区的数组逐位进行“与”操作,得到的结果就是需要比对区域内的数据,掩码操作就相当于一个筛子,起到过滤的作用,即把需要比对的区域内的数据提取出来,实际应用中除了将区域掩码与屏幕数据进行按位“与”操作外,还可以定义其它的操作方式来实现数据的提取,例如,对于彩色屏幕,每个象素不能简单地用一个数而是用一个数据结构表示,这时就需要一种算法,对于处于需比对区域之外的象素数据进行处理,将颜色转换为一种约定的颜色如白色;步骤104终端将提取出来的需比对区域内的数据进行处理,如将数据作为一个数组或者字符串组织为某种哈希算法(如MD5)的输入,经计算后得到该数据的哈希编码并传输给控制设备;上述处理的步骤除了用哈希算法计算外,还可以使用其它方法进行处理,如采用CRC(Cyclic Redundancy Check,循环冗余校验)方法对数据进行处理,或者采用压缩的方法对数据进行处理;步骤105控制设备接收到终端发来的哈希编码后,将该哈希编码与控制设备内预存的以与步骤101相同的转换方法和与步骤104相同的哈希算法得到的需比对区域的正确显示结果的哈希编码进行比对;当然步骤104中也可以不进行哈希计算直接将提取出来的数据传输给控制设备,相应地步骤105中控制设备将终端发来的数据与控制设备内预存的以与步骤101相同的转换方法得到的需比对区域的正确显示结果的数据进行比对,但是这种情况下终端和控制设备之间的数据传输量比较大,相应地测试效率比较低;在实际应用中为了减少终端与控制设备之间的数据传输量通常会对数据进行处理后再传输给控制设备。
实施例二参见图3,本发明还提供了另外一种测试终端屏幕显示的方法,与实施例一不同的是终端直接将屏幕显示结果数据传输给控制设备,由控制设备来提取需比对区域内的数据,所述方法具体包括以下步骤步骤201终端在内部将屏幕显示结果转换成数据后保存;步骤202终端将保存的屏幕显示结果数据传输给控制设备;步骤203控制设备接收到所述数据后,用掩码方式或其它处理方式提取需比对区域内的数据;步骤204控制设备将提取出来的需比对区域内的数据与控制设备内预存的以与步骤201相同的转换方法得到的需比对区域的正确显示结果的数据进行比对。
实施例三参见图4,本发明还提供了另外一种测试终端屏幕显示的方法,与实施例二不同的是终端将屏幕显示结果数据传输给控制设备之前先进行处理,以减少终端和控制设备之间的数据传输量,所述方法具体包括以下步骤步骤301终端在内部将屏幕显示结果转换成数据后保存;步骤302终端先处理保存的屏幕显示结果数据,如压缩处理,然后传输给控制设备;步骤303控制设备接收到所述数据后,先还原出屏幕显示结果数据,如解压缩处理,然后用掩码方式或其它处理方式提取需比对区域内的数据;步骤304控制设备将提取出来的需比对区域内的数据与控制设备内预存的以与步骤201相同的转换方法得到的需比对区域的正确显示结果的数据进行比对。
实施例四本发明提供了一种测试终端屏幕显示结果的系统,具体包括终端、获取模块和控制设备;本发明所述的终端可以是移动通信终端,如手机,也可以是固定终端,如计算机;控制设备一般为计算机,也可以是专门用来发送控制命令和进行结果比对的设备;终端包括存储模块,用于将屏幕显示结果转换成数据后保存;获取模块,用于从接收到的由终端发来的屏幕显示结果数据中获取需比对区域内的数据;控制设备包括比对模块,用于将接收到的由获取模块发来的需比对区域内的数据与控制设备内预存的需比对区域的正确显示结果的数据进行比对。
当终端为移动通信终端时,控制设备与终端进行通信的时候可以通过终端调试使用的控制电缆来实现,也可以不采用控制电缆,而是通过无线方式实现,例如蓝牙方式;当终端为计算机时,控制设备与终端连接用的控制电缆就会有比较多的选择,例如网线、串口线、甚至无线方式等等;当控制设备与终端都为计算机时,可以用一台计算机来实现,即计算机既是显示终端又是控制设备,此时就不需要控制电缆了,而且能直接在被测试程序里就进行结果比对,省略了数据传输的环节。
参见图5,所述获取模块可以在终端上,此时控制设备还包括命令模块,用于向获取模块发送获取需比对区域内数据的命令;所述获取模块用于根据命令模块发来的命令从接收到的由存储模块发来的屏幕显示结果数据中获取需比对区域内的数据;终端还包括运算模块,用于对接收到的由获取模块发来的数据进行运算处理并转发给命令模块。
其中运算模块具体为哈希模块,用于对接收到的由获取模块发来的数据进行哈希计算并转发给命令模块;或者为循环冗余校验模块,用于采用循环冗余校验的方法对对接收到的由获取模块发来的数据进行运算处理并转发给命令模块;或者为压缩模块,用于对接收到的由获取模块发来的数据进行压缩处理并转发给命令模块;所述运算模块也可以为采用其它算法进行处理的模块。
实施例五参见图6,本发明还提供了另外一种测试终端屏幕显示结果的系统,与实施例四不同的是获取模块在控制设备上,即所述系统具体包括终端和控制设备;所述终端包括存储模块,用于将屏幕显示结果转换成数据后保存;所述控制设备包括(1)获取模块,用于从接收到的由终端的存储模块发来的屏幕显示结果数据中获取需比对区域内的数据;(2)比对模块,用于将接收到的由获取模块发来的需比对区域内的数据与控制设备内预存的需比对区域的正确显示结果的数据进行比对。
实施例六参见图7,本发明还提供了另外一种测试终端屏幕显示结果的系统,获取模块也在控制设备上,但与实施例五不同的是所述系统还包括压缩模块和解压缩模块,即所述系统具体包括终端和控制设备;所述终端包括(1)存储模块,用于将屏幕显示结果转换成数据后保存;(2)压缩模块,用于对接收到的由存储模块发来的屏幕显示结果数据进行压缩处理;所述控制设备包括(1)解压缩模块,用于对接收到的由终端的压缩模块发来的数据进行解压缩还原成屏幕显示结果数据并发送给获取模块;(2)获取模块,用于从接收到的由解压缩模块发来的屏幕显示结果数据中获取需比对区域内的数据;(3)比对模块,用于将接收到的由获取模块发来的需比对区域内的数据与控制设备内预存的需比对区域的正确显示结果的数据进行比对。
上述实施例四、五和六中的获取模块可以为掩码模块,用于生成需比对区域的掩码,还用于将接收到的屏幕显示结果数据与生成的掩码按照设定的规则进行操作得到需比对区域的数据;也可以为采用其它方法提取需比对区域数据的模块。
以上所述的实施例,只是本发明较优选的具体实施方式
的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换,都应包含在本发明的保护范围内。
权利要求
1.一种测试终端屏幕显示结果的方法,其特征在于,所述方法包括以下步骤步骤A终端将屏幕显示结果转换成数据并保存;步骤B控制设备根据所述终端保存的屏幕显示结果数据获取需比对区域内的数据;步骤C所述控制设备将获取的需比对区域内的数据与控制设备内预存的需比对区域的正确显示结果对应的数据进行比对。
2.根据权利要求1所述的测试终端屏幕显示结果的方法,其特征在于,所述步骤B具体包括步骤B1控制设备向所述终端发送获取需比对区域内数据的命令;步骤B2所述终端接收到所述命令后,从保存的屏幕显示结果数据中提取需比对区域内的数据,然后将所述提取出来的数据直接传输给所述控制设备或对所述提取出来的数据进行处理后传输给所述控制设备。
3.根据权利要求2所述的测试终端屏幕显示结果的方法,其特征在于,所述步骤B2中对所述提取出来的数据进行处理的步骤具体为采用哈希算法、循环冗余校验方法或压缩的方法对所述提取出来的数据进行运算。
4.根据权利要求1所述的测试终端屏幕显示结果的方法,其特征在于,所述步骤B具体包括步骤B1′所述终端将保存的屏幕显示结果数据直接传输给控制设备;步骤B2′所述控制设备接收到所述屏幕显示结果数据后,从所述屏幕显示结果数据中提取需比对区域内的数据。
5.根据权利要求1所述的测试终端屏幕显示结果的方法,其特征在于,所述步骤B具体包括步骤B1″所述终端先处理保存的屏幕显示结果数据然后传输给控制设备;步骤B2″所述控制设备接收到处理后的屏幕显示结果数据后,先还原出屏幕显示结果数据再提取需比对区域内的数据。
6.根据权利要求5所述的测试终端屏幕显示结果的方法,其特征在于,所述步骤B具体包括步骤B1所述终端先压缩保存的屏幕显示结果数据然后传输给控制设备;步骤B2所述控制设备接收到压缩后的屏幕显示结果数据后,先解压缩然后提取需比对区域内的数据。
7.根据权利要求2、4或5所述的测试终端屏幕显示结果的方法,其特征在于,所述提取需比对区域内的数据的步骤具体为首先生成需比对区域的掩码,然后将所述掩码与所述屏幕显示结果数据按照设定的规则进行操作得到需比对区域的数据。
8.一种测试终端屏幕显示结果的系统,其特征在于,所述系统包括终端、获取模块和控制设备;所述终端包括存储模块,用于将屏幕显示结果转换成数据后保存;所述获取模块,用于从接收到的由所述终端发来的屏幕显示结果数据中获取需比对区域内的数据;所述控制设备包括比对模块,用于将接收到的由所述获取模块发来的需比对区域内的数据与控制设备内预存的需比对区域的正确显示结果的数据进行比对。
9.根据权利要求8所述的测试终端屏幕显示结果的系统,其特征在于,所述控制设备还包括命令模块,用于向所述获取模块发送获取需比对区域内数据的命令;所述获取模块在所述终端上,用于根据所述命令模块发来的命令从接收到的由所述存储模块发来的屏幕显示结果数据中获取需比对区域内的数据;所述终端还包括运算模块,用于对接收到的由所述获取模块发来的数据进行运算处理并转发给所述命令模块。
10.根据权利要求9所述的测试终端屏幕显示结果的系统,其特征在于,所述运算模块具体为哈希模块,用于对接收到的由所述获取模块发来的数据进行哈希计算并转发给所述命令模块;或者为循环冗余校验模块,用于采用循环冗余校验的方法对接收到的由所述获取模块发来的数据进行运算处理并转发给所述命令模块;或者为压缩模块,用于对接收到的由所述获取模块发来的数据进行压缩处理并转发给所述命令模块。
11.根据权利要求8所述的测试终端屏幕显示结果的系统,其特征在于,所述获取模块在所述控制设备上。
12.根据权利要求11所述的测试终端屏幕显示结果的系统,其特征在于,所述终端还包括压缩模块,用于对接收到的由所述存储模块发来的屏幕显示结果数据进行压缩处理;所述控制设备还包括解压缩模块,用于对接收到的由所述终端的压缩模块发来的数据进行解压缩还原成屏幕显示结果数据并发送给所述获取模块;所述获取模块,用于从接收到的由所述解压缩模块发来的屏幕显示结果数据中获取需比对区域内的数据。
13.根据权利要求8至12中任一权利要求所述的测试终端屏幕显示结果的系统,其特征在于,所述获取模块具体为掩码模块,用于生成需比对区域的掩码,还用于将接收到的屏幕显示结果数据与生成的掩码按照设定的规则进行操作得到需比对区域的数据。
全文摘要
本发明提供了一种测试终端屏幕显示结果的方法和系统,属于终端测试领域。为了解决现有技术系统复杂、成本高、速度慢、准确度低以及局部区域显示结果比对困难的问题,本发明提供了一种测试终端屏幕显示结果的方法,所述方法包括在终端保存显示结果的步骤、获取屏幕中需比对区域显示结果的步骤以及将获取的需比对区域显示结果与预存的正确显示结果进行比对的步骤;本发明还提供了一种测试终端屏幕显示结果的系统,所述系统包括终端、获取模块和控制设备;采用本发明所述技术方案不仅简化了系统、降低了成本,还减少了数据传输、提高了比对效率。
文档编号G06F3/14GK1917659SQ200610103660
公开日2007年2月21日 申请日期2006年7月27日 优先权日2006年7月27日
发明者王辉 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1