CN108920380A - 软件兼容性的测试方法、装置、服务器、设备和存储介质 - Google Patents

软件兼容性的测试方法、装置、服务器、设备和存储介质 Download PDF

Info

Publication number
CN108920380A
CN108920380A CN201810804807.9A CN201810804807A CN108920380A CN 108920380 A CN108920380 A CN 108920380A CN 201810804807 A CN201810804807 A CN 201810804807A CN 108920380 A CN108920380 A CN 108920380A
Authority
CN
China
Prior art keywords
picture
detected
test
terminal equipment
screenshot
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
Application number
CN201810804807.9A
Other languages
English (en)
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.)
Baidu Online Network Technology Beijing Co Ltd
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201810804807.9A priority Critical patent/CN108920380A/zh
Publication of CN108920380A publication Critical patent/CN108920380A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test 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

软件兼容性的测试方法、装置、服务器、设备和存储介质
技术领域
本发明实施例涉及软件测试技术领域,尤其涉及一种软件兼容性的测试方法、装置、服务器、设备和存储介质。
背景技术
随着移动互联网的出现,每天都有不同的移动App(Application,应用程序)上线,而移动App运行的环境,例如分辨率、机型等的多样化,导致同一个App在不同的运行环境下可能出现多种兼容性问题,这就成为软件测试人员必须做兼容性测试的原因之一。此外,兼容性测试的质量,将直接影响软件的正常运行及用户体验,进而影响产品的商业价值。
目前,移动APP的兼容性测试,主要是依靠测试人员针对不同运行环境手工进行测试,并通过肉眼观察测试结果后进行主观判断。这种传统的测试方式存在的缺陷在于:(1)测试结果容易受测试人员主观因素的影响;(2)手动测试费时费力、效率低下,影响APP的发布时效;(3)无法对测试结果进行科学分析并作出预测。
综上所述,现有软件兼容性的测试方式效率较低,可靠性较差。
发明内容
本发明实施例提供一种软件兼容性的测试方法、装置、服务器、设备和存储介质,提升了软件兼容性的测试效率以及测试结果的准确性。
第一方面,本发明实施例提供了一种软件兼容性的测试方法,应用于服务器,该方法包括:
接收被测终端设备发送的待检测截屏图片,并获取基准图片;其中,所述待测截屏图片是所述被测终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是通过对应用程序的测试脚本文件进行解析得到;
将所述待检测截屏图片与所述基准图片进行对比分析,并根据对比分析结果确定所述待检测截屏图片是否发生显示错乱。
第二方面,本发明实施例还提供一种软件兼容性的测试装置,应用于服务器,该装置包括:
图片获取模块,用于接收被测终端设备发送的待检测截屏图片,并获取基准图片;其中,所述待检测截屏图片是所述被测终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是通过对应用程序的测试脚本文件进行解析得到;
图片对比模块,用于将所述待检测截屏图片与所述基准图片进行对比分析,并根据对比分析结果确定所述待检测截屏图片是否发生显示错乱。
第三方面,本发明实施例还提供了一种软件兼容性的测试方法,应用于终端设备,该方法包括:
被测终端设备获取通过对应用程序的测试脚本文件进行解析得到的测试指令;
被测终端设备解释执行所述测试指令;其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:执行截屏操作并将截屏操作得到的图片作为待检测截屏图片发送给服务器,以使服务器检测所述待检测截屏图片是否发生显示错乱。
第四方面,本发明实施例还提供一种软件兼容性的测试装置,应用于终端设备,该装置包括:
测试指令获取模块,配置于被测终端设备中,用于获取通过对应用程序的测试脚本文件进行解析得到的测试指令;
测试指令执行模块,配置于被测终端设备中,用于解释执行所述测试指令;其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:执行截屏操作并将截屏操作得到的图片作为待检测截屏图片发送给服务器,以使服务器检测所述待检测截屏图片是否发生显示错乱。
第五方面,本发明实施例还提供一种服务器,该服务器包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的应用于服务器的软件兼容性的测试方法。
第六方面,本发明实施例还提供了一种终端设备,该终端设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的应用于终端设备的软件兼容性的测试方法。
第七方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所提供的应用于服务器的软件兼容性的测试方法。
第八方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所提供的应用于终端设备的软件兼容性的测试方法。
本实施例的技术方案,通过接收被测终端设备发送的待检测截屏图片,并获取基准图片后,可将待检测截屏图片与基准图片进行对比分析,待检测截屏图片与基准图片相似度越高,说明被测终端设备对软件的兼容性越好。如果根据对比分析结果确定待检测截屏图片发生显示错乱,则说明被测终端设备不兼容该软件。通过采用本实施例提供的技术方案,实现了准确、高效、科学地发现图片显示错乱的兼容性问题。相对于现有技术采用的人工进行软件兼容性测试的方式,本实施例的测试方式速度更快、准确性更高,测试结果更加可靠,对提升相关产品的商业价值起到了重要作用。
附图说明
图1为本发明实施例一提供的一种软件兼容性的测试方法的流程图;
图2为本发明实施例一提供的一种测试用例描述代码块示意图;
图3为本发明实施例二提供的一种软件兼容性的测试方法的流程图;
图4为本发明实施例三提供的一种软件兼容性的测试方法的流程图;
图5为本发明实施例四提供的一种软件兼容性的测试方法的示意图;
图6为本发明实施例四提供的控制终端设备、被测终端设备与服务器之间的交互示意图;
图7为本发明实施例五提供的一种软件兼容性的测试方法的流程图;
图8为本发明实施例六提供的一种软件兼容性的测试装置的结构框图;
图9为本发明实施例七提供的一种软件兼容性的测试装置的结构框图;
图10为本发明实施例八提供的一种服务器的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种软件兼容性的测试方法的流程图,该方法可以由一软件兼容性的测试装置来执行,该装置可以通过软件和/或硬件的方式实现,该装置可以集成在服务器中,典型的是对移动APP或网页的浏览器进行软件兼容性测试。参见图1,本实施例的方法具体包括:
S110、接收被测终端设备发送的待检测截屏图片,并获取基准图片。
其中,待测截屏图片是被测终端设备解释执行测试指令中的截屏指令得到的;测试指令是通过对应用程序的测试脚本文件进行解析得到。
示例性的,本实施例提供的软件兼容性测试的技术方案可用于测试不同运行环境的设备对于同一APP的兼容性,因此,本实施例中的被测终端设备为安装有相同的APP但运行环境不同的终端设备,例如可以为ROM(Read-Only Memory,只读存储器)、分辨率或机型不同的手机或平板电脑等,被测APP可预先被安装到被测终端设备中。其中,被测终端设备的数量可以为一个也可以为多个,本实施例对此不作具体限定。
示例性的,由于不同运行环境的被测终端设备的系统版本、分辨率等设备属性存在不同,因此,软件兼容性的测试结果可以通过同一图片或同一界面在不同运行环境的被测终端设备中的显示效果来确定。本实施例优选采用将基准图片与被测终端设备执行测试指令中的截屏指令后所得到的待检测截屏图片进行对比分析的方式来确定图片或界面的显示效果。
示例性的,基准图片的获取方式可以为:接收控制终端设备发送的基准图片。其中,基准图片是控制终端设备解释执行测试指令中的截屏指令得到的,而测试指令是通过控制终端对应用程序的测试脚本文件进行解析得到。
具体的,测试指令可以包括开始、结束、点击、输入、滑动、等待、截屏等指令。每一个开始和结束指令及其中间的指令构成了一个测试用例描述代码块,多个测试用例描述代码块即构成了一个完整的测试脚本文件。图2为本发明实施例一提供的一种测试用例描述代码块示意图。如图2所示,在解释执行测试指令的过程中,需顺序执行开始(begin)、等待(wait)、点击(click)、等待(wait)、滑动(scroll)、等待(wait)、截屏(screen)和结束(end)等指令。下面对各指令的功能分别进行介绍:
(1)开始指令由关键字begin表示,表示单个测试用例的开始;(2)结束指令由关键字end表示,表示单个测试用例的结束;(3)点击指令由关键字click表示,可分为两个子指令,分别对应文本和控件的ID(identification,身份标识);(4)滑动指令由关键字scroll表示,用来滑动窗体,可包含4个子指令;(5)等待指令由关键字wait表示,用于控制程序等待设定时长,例如等待2秒后再继续执行;(6)截屏指令由关键字screen表示,用于截取当前屏幕快照作为截屏图片。
示例性的,点击指令所包含的子指令可以为点击控件ID:click id+{控件ID},和点击文本:click text+{文本}。其中,点击控件ID用于控制点击特定ID的控件。点击文本用于控制点击包含特定文本的控件。
示例性的,滑动指令所包含的4个子指令可以为左滑动指令:scroll left+{控件ID}{pixels}、右滑动指令:scroll right+{控件ID}{像素(pixels)}、上滑动指令:scrolltop+{控件ID}{pixels}和下滑动指令:scroll bottom+{控件ID}{pixels}。其中,左滑动指令用于将特定ID的控件向左滑动指定像素;右滑动指令用于将特定ID的控件向右滑动指定像素;上滑动指令用于将特定ID的控件向上滑动指定像素;下滑动指令用于将特定ID的控件向下滑动指定像素。
进一步的,测试指令并不局限与上述几个指令,还可以根据实际测试需要进行扩充,例如还可以包括输入指令,该输入指令由关键字input表示,用来使用预先设置的值来填充输入控件。例如,指令input{控件ID}+{指定内容},可用于对特定ID的控件进行指定内容的输入。
优选的,本实施例中,控制终端设备解析应用程序的测试脚本文件得到测试指令后,通过解释执行测试指令中的截屏指令可得到基准图片,并可将基准图片上传到服务器。另一方面,控制终端在解析测试脚本文件得到测试指令后,还可将测试指令同步发送到需要测试的多个被测终端设备。多个被测终端设备在解释执行测试指令的过程中,如果遇到截屏指令,则将截取当前屏幕快照作为待检测截屏图片,并上传到服务器。
可选的,控制终端设备在接收到应用程序的测试脚本文件后,也可将该测试脚本文件同步发送到被测试终端设备,由被测试终端设备对测试脚本文件进行解析得到测试指令。控制终端设备和被测终端设备通过同时解释执行测试指令中的截屏指令可得到基准图片和待检测截屏图片。
在上述过程中,需存在一个控制终端设备和至少一个被测终端设备,从而得到基准图片和至少一个待测试截屏图片。服务器、控制终端设备和被测终端设备两两之间同时存在通信连接。其中,控制终端设备为软件兼容性测试达到预设标准的设备,例如可以为软件兼容性达标的平板电脑或手机等智能终端设备。
示例性的,获取基准图片的方式还可以为:服务器读取本地存储的基准图片。在这种情况下,上述控制终端设备也可作为被测终端设备执行测试操作,即被测终端设备的数量可以为一个或多个,并同时与服务器进行通信。
S120、将待检测截屏图片与基准图片进行对比分析,并根据对比分析结果确定待检测截屏图片是否发生显示错乱。
在理想情况下,如果被测终端设备兼容某个被测APP,则通过该APP所显示的图片一般不会出现图片扭曲、拉伸或压缩等图片显示错乱的问题。即使被测终端设备与控制终端设备的界面尺寸不一致,在控制终端设备的界面中所显示的图片通过等比例的放大或缩小后,也可在被测终端设备的显示界面中显示相同的图片。
示例性的,本实施例中,不同运行环境的多个被测终端设备可将截屏得到的多个待检测截屏图片上传到服务器,服务器将多个待检测截屏图片与基准图片分别进行分析比对后可确定每个待检测截屏图片是否发生显示错乱,从而可确定被测终端设备是否兼容某个被测APP,即得到软件兼容性的测试结果。
示例性的,服务器在将待检测截屏图片与基准图片进行对比分析,并根据对比分析结果确定待检测截屏图片是否发生显示错乱的过程中,可将待测截屏图片中的显示图片与基准图片中的对应图片进行相似度比较,并根据比较结果确定所述待检测截屏图片是否发生图片错乱。或者,服务器也可直接将待检测截屏图片与所述基准图片进行相似度比较,并根据比较结果确定待检测截屏图片是否发生界面错乱。其中,上述两种方式中图片比较的对象存在不同,一种为图片局部对比,另一种为界面整体对比。但是不论是哪种对比方式,只要出现图片内容显示错乱,例如出现白块、扭曲等问题,则可说明被测终端设备对APP的兼容性较差。
优选的,为了提高兼容性测试的准确性,服务器也可采用将上述两种比较方式相结合的形式,即将待测截屏图片中的显示图片与基准图片中的对应图片进行对比分析这一图片局部对比的方式,与将待检测截屏图片与基准图片进行对比分析这一界面整体对比的方式相结合,确定图片错乱和界面错乱是否同时存在。这样设置进一步提升了测试结果的准确性。
需要说明的是,服务器如果采用将上述图片局部对比与界面整体对比相结合的方式,则比较局部图片与比较整体界面的执行顺序不存在先后之分,可以同步进行,也可以顺序执行,本实施例对此不作任何限定。
可选的,服务器在进行局部图片或界面整体相似度对比的过程中,可采用直方图匹配算法、差值哈希算法或感知哈希(pHash)算法进行相似度比较,相似度值越大,说明被测终端设备对被测APP的兼容性越好;相似度值越小,说明被测终端设备越不兼容该APP,即通过进行相似度比较所得出的相似度值能够确定被测终端设备对被测APP的兼容性。
本实施例的技术方案,通过接收被测终端设备发送的待检测截屏图片,并获取基准图片后,可将待检测截屏图片与基准图片进行对比分析,待检测截屏图片与基准图片相似度越高,说明被测终端设备对软件的兼容性越好。如果根据对比分析结果确定待检测截屏图片发生显示错乱,则说明被测终端设备不兼容该软件。通过采用本实施例提供的技术方案,实现了高效、准确、科学地发现图片显示错乱的兼容性问题。相对于现有技术采用的人工进行软件兼容性测试的方式,本实施例的测试方式速度更快、准确性更高,测试结果更加可靠,对提升相关产品的商业价值起到了重要作用。
实施例二
图3为本发明实施例二提供的一种软件兼容性的测试方法的流程图,本实施例在上述实施例的基础上,对“将待检测截屏图片中的显示图片与基准图片中的对应图片进行相似度比较,并根据比较结果确定待检测截屏图片是否发生图片错乱”的操作进行了优化。其中与上述实施例相同或相应的术语的解释在此不再赘述。参见图3,本实施例提供的软件兼容性的测试方法包括:
S210、接收被测终端设备发送的待检测截屏图片,并获取基准图片。
其中,待测截屏图片是被测终端设备解释执行测试指令中的截屏指令得到的,测试指令是通过对应用程序的测试脚本文件进行解析得到。
S220、根据基准图片的尺寸以及基准图片中显示图片的尺寸,确定显示图片在基准图片中的第一基准位置。
可选的,基准图片的尺寸可通过识别基准图片边界位置像素点的个数进行确定,或者也可预先存储基准图片的尺寸信息。
示例性的,显示图片可以为基准图片中较为重要的位置所对应的图片。
示例性的,基准图片中显示图片的尺寸可根据基准图片的尺寸以及显示图片的形状等信息预先进行设置。在确定显示图片在基准图片中的第一基准位置时,可选定显示图片中若干个参考点在基准图片中的位置作为第一基准位置。
其中,参考点可以为显示图片的四个顶点,当这四个顶点中的其中一个标准顶点的坐标确定后,可根据该标准顶点的坐标和显示图片的尺寸确定出其他顶点的坐标。本实施例中,优选采用显示图片左上角的顶点作为标准顶点,该顶点在基准图片中的左上角偏移量可预先进行设置。
示例性的,S220中,可按照如下公式确定显示图片在基准图片中的基准坐标,作为第一基准位置:
δ(x1,y1)=(a,b);
δ(x2,y1)=δ(x1+L3,y1);
δ(x1,y2)=δ(x1,y1+W3);
δ(x2,y2)=δ(x1+L3,y1+W3);
其中,δ(x1,y1)、δ(x2,y1)、δ(x1,y2)和δ(x2,y2)为显示图片在基准图片中的基准坐标;L3为显示图片的长,W3为显示图片的宽;a为显示图片相对基准图片的左上角的横向偏移量,b为显示图片相对基准图片的左上角的纵向偏移量,即(a,b)为显示图片中标准顶点的坐标,根据该坐标和显示图片的尺寸可确定出显示图片其他顶点的坐标。
S230、根据待检测截屏图片的尺寸和第一基准位置,确定显示图片在待检测截屏图片中的第二基准位置。
本实施例中,计算显示图片在待检测截屏图片中的第二基准位置的目的是:计算在未发生显示错乱的情况下显示图片在待检测截屏图片中应该在的位置。这是因为:在理想情况下,如果被测终端设备对被测软件的兼容性较好,则待检测截屏图片在被测终端设备将不会发生显示错乱的现象,基准图片中的显示图片经过等比例的放大或缩小后,可在被测终端设备的待检测截屏图片中显示相同的图片内容。因此,本实施例计算出的第二基准位置是按比例放大或缩小后的显示图片在待检测截屏图片中应该在的位置。
示例性的,可按照如下公式确定显示图片在待检测截屏图片中的基准坐标,作为第二基准位置:
Λ(x1,y1)=Λ(L2×δx1/L1,W2×δy1/W1);
Λ(x2,y1)=Λ(L2×δx2/L1,W2×δy1/W1);
Λ(x1,y2)=Λ(L2×δx1/L1,W2×δy2/W1);
Λ(x2,y2)=Λ(L2×δx2/L1,W2×δy2/W1);
其中,Λ(x1,y1)、Λ(x2,y1)、Λ(x1,y2)和Λ(x2,y2)为显示图片在待检测截屏图片中的基准坐标;L1为基准图片的长,W1为基准图片的宽;L2为待检测截屏图片的长,W2为待检测截屏图片的宽;L3为显示图片的长,W3为显示图片的宽。
通过上述设置可以保证S240中,基准图片中的显示图片与待检测截屏图片中的目标图片在进行相似度比较时具有可比性。
S240、根据第二基准位置在待检测截屏图片中进行图片裁剪得到目标图片。
示例性的,图片裁剪可以为:在待检测截屏图片中提取出第二基准位置的图片。其中,第二基准位置可以为显示图片的四个顶点在待检测截屏图片中的基准坐标位置。第二基准位置确定后,只需要将待检测截屏图片中第二基准位置对应的目标图片与基准图片中的显示图片进行局部相似度比较即可,而非将待检测截屏图片与基准图片整体进行相似度比较。这样设置能够减小相似度比较时的计算量,有效提升测试效率。
S250、将显示图片和目标图片进行相似度比较,并根据比较结果确定待检测截屏图片是否发生图片错乱。
示例性的,是否发生图片错乱可以根据显示图片和目标图片比较得到的相似度值进行确定。如果显示图片和目标图片的相似度值低于第一预设相似度阈值时,则确定待检测截屏图片发生图片错乱。其中,第一预设相似度阈值为经验值,优选为90%。当然,第一预设相似度阈值可以根据实际测试需求灵活设置。
本实施例在上述实施例的基础上进行了优化,通过将基准图片中的显示图片与待检测截屏图片中的目标图片进行相似度比较,可确定待检测截屏图片是否发生图片错乱,从而可对被测终端设备对软件的兼容性进行准确判定。其中,显示图片与目标图片的比较在一定程度上减小了相似度比较时的计算量,提高了测试效率。
实施例三
图4为本发明实施例三提供的一种软件兼容性的测试方法的流程图,本实施例在上述实施例的基础上,将“将待检测截屏图片与基准图片进行相似度比较,并根据比较结果确定待检测截屏图片是否发生界面错乱”优化为“将待检测截屏图片与基准图片进行相似度比较,并根据比较结果确定待检测截屏图片是否发生界面错乱”。其中与上述实施例相同或相应的术语的解释在此不再赘述。参见图4,本实施例提供的软件兼容性的测试方法包括:
S310、接收被测终端设备发送的待检测截屏图片,并获取基准图片。
待测截屏图片是被测终端设备解释执行测试指令中的截屏指令得到的,测试指令是通过对应用程序的测试脚本文件进行解析得到。
S320、将待检测截屏图片与基准图片进行相似度比较,并根据比较结果确定待检测截屏图片是否发生界面错乱。
示例性的,通过界面显示效果也可判断被测终端设备对被测APP的兼容性。本实施例在进行界面相似度比较时,采用的是待检测截屏图片与基准图片整体比较的方式,相对于上述实施例提供的待检测截屏图片中的目标图片与基准图片中的显示图片局部比较的方式,需要比较的图片信息较多,因此比较结果更加能够说明待检测截屏图片在被测终端设备中的显示效果,即更加能够说明被测终端设备对被测APP的兼容性。
示例性的,在判断界面是否发生显示错乱时,可以通过待检测截屏图片与基准图片进行相似度比较得到的相似度值进行确定,例如如果相似度值低于第二预设相似度阈值时,则确定待检测截屏图片发生界面错乱,此时可说明被测终端设备对软件的兼容性较差。
其中,第二预设相似度阈值可与第一预设相似度阈值相同,例如优选为90%。第二预设相似度阈值也可与第一预设相似度阈值不同,例如可根据实际测试需求灵活设置。
本实施例在上述实施例的基础上,通过采用待检测截屏图片与基准图片整体比较的方式,使得比较结果的更加准确,提高了软件兼容性测试的准确性。
实施例四
图5为本发明实施例四提供的一种软件兼容性的测试方法的示意图,本实施例在上述实施例的基础上进行了优化,增加了服务器接根据应用程序运行参数和/或日志信息生成错误检测报告的相关内容,参数图5,本实施例提供的软件兼容性的测试方法包括:
S410、接收被测终端设备发送的待检测截屏图片,并获取基准图片。
其中,待测截屏图片是被测终端设备解释执行测试指令中的截屏指令得到的;测试指令是通过对应用程序的测试脚本文件进行解析得到。
S420、接收被测终端设备发送的应用程序运行参数和/或执行对应截屏操作前记录的日志信息。
其中,应用程序运行参数包括机型、系统版本或分辨率中的至少一个。日志信息包括执行的操作指令信息,例如点击、输入、滑动、等待、截屏等指令。
示例性的,被测终端设备每执行一个动作,可对该动作对应的操作指令信息进行存储,在上传待检测截屏图片时,可将操作指令信息或应用程序运行参数,或者将操作指令信息和应用程序运行参数一并上传到服务器,以供服务器生成测试报告。
需要说明的是,S410和S420不存在执行顺序的先后之分,可以先后执行,可以同时进行,本实施例对此不作任何限定。
S430、将待检测截屏图片与基准图片进行对比分析,在确定待检测截屏图片发生显示错乱时,根据应用程序运行参数和/或日志信息生成错误检测报告。
示例性的,服务器将检测截屏图片与基准图片进行分析对比的过程中,在确定待检测截屏图片发生显示错乱时,可根据应用程序运行参数或日志信息中的任意一项或者将这两项相结合生成错误检测报告。该错误测试报告的生成有助于测试人员了解出现兼容性问题的待测终端设备的相关信息,例如该待测终端设备中应用程序运行参数以及该待测终端设备所执行的指令等,从而有利于测试人员能够有针对性地解决被测终端设备对软件的兼容性问题。
示例性的,如果基准图片是控制终端设备解释执行测试指令中的截屏指令得到的,那么控制终端设备每执行一个动作时,也可存储对应的操作指令信息,并在上传基准图片时,将应用程序运行参数和操作指令信息上传到服务器。服务器在生成错误测试报告时,也可结合控制终端所上传的应用程序运行参数或日志信息生成错误测试报告。测试人员在分析错误测试报告时,可将被测终端设备与控制终端设备的相关信息进行比较,从而确定出现兼容性问题的原因及相关的解决方案。
优选的,图6为本发明实施例四提供的控制终端设备、被测终端设备与服务器之间的交互示意图。如图6所示,在将测试用例描述模块TCDL(Test Case DescriptionLanguage)脚本文件下载到控制终端设备后,控制终端设备可解释执行该脚本文件得到测试指令,并可将该测试指令同步到多个被测终端设备中。被测终端设备解释执行测试指令中的截屏指令得到待检测截屏图片,并在执行对应截屏操作前记录包含有操作指令信息的日志信息。被测终端设备在上传待检测截屏图片时,可将日志信息以及应用程序运行参数等数据上报到服务器。
此外,控制终端设备在上传基准图片时,也可将执行截屏操作前记录的包含有操作指令信息的日志信息以及应用程序运行参数等数据上报到服务器。服务器通过将待检测截屏图片与基准图片进行对比分析,检测待检测截屏图片是否发生图片错乱和界面错乱。如果确定待检测截屏图片出现图片错乱和界面错乱中的任意一项或者二者同时存在时,则自动生成错误(bug)测试报告,以供测试人员分析。
本实施例在上述实施例的基础上进行了优化,在确定待检测截屏图片发生显示错乱时,通过根据应用程序运行参数和/或日志信息生成错误检测报告,可为测试人员提供兼容性分析的依据,并可供测试人员准确查找出现兼容性问题的设备和原因。
实施例五
图7为本发明实施例五提供的一种软件兼容性的测试方法的流程图,该方法可以由软件兼容性的测试装置来执行,该装置可以通过软件和/或硬件的方式实现,该装置可以集成在终端设备中,典型的是对移动APP或网页的浏览器进行软件兼容性测试。参见图7,本实施例的方法具体包括:
S510、被测终端设备获取通过对应用程序的测试脚本文件进行解析得到的测试指令。
优选的,本实施例中的测试指令可以由控制终端设备解释执行通过对测试脚本文件进行解析得到的。其中,测试指令包括截屏指令,该截屏指令对应的执行操作为:在测试指令为截屏指令时,控制终端设备执行截屏操作并将截屏操作得到的图片作为检测时的基准图片发送给服务器。
S520、被测终端设备解释执行测试指令,其中,测试指令包括截屏指令,截屏指令对应的执行操作为:执行截屏操作并将截屏操作得到的图片作为待检测截屏图片发送给服务器,以使服务器检测待检测截屏图片是否发生显示错乱。
示例性的,服务器检测待检测截屏图片是否发生显示错乱的操作可参照上述实施例提供的检测方法,本实施例在此不做赘述。
进一步的,被测终端设备在将待检测截屏图片发送给服务器时,还可将应用程序运行参数和/或执行截屏操作前记录的日志信息发送给服务器,以使服务器根据应用程序运行参数和/或日志信息生成错误检测报告,以供测试人员进行兼容性分析。
其中,应用程序运行参数包括:机型、系统版本或分辨率中的至少一个;日志信息包括执行的操作指令信息。
本实施例的技术方案,通过接收被测终端设备发送的待检测截屏图片,并获取基准图片后,可将待检测截屏图片与基准图片进行对比分析,待检测截屏图片与基准图片相似度越高,说明被测终端设备对软件的兼容性越好。如果根据对比分析结果确定待检测截屏图片发生显示错乱,则说明被测终端设备不兼容该软件。通过采用本实施例提供的技术方案,实现了高效、准确、科学地发现图片显示错乱的兼容性问题。相对于现有技术采用的人工进行软件兼容性测试的方式,本实施例的测试方式速度更快、准确性更高,测试结果更加可靠,对提升相关产品的商业价值起到了重要作用。
实施例六
图8为本发明实施例六提供的一种软件兼容性的测试装置的结构框图,该测试装置可以通过软件和/或硬件的方式实现,配置于服务器中,参见图8,该装置具体包括:图片获取模块610和图片对比模块620。
其中,图片获取模块610,用于接收被测终端设备发送的待检测截屏图片,并获取基准图片;其中,所述待检测截屏图片是所述被测终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是通过对应用程序的测试脚本文件进行解析得到;
图片对比模块620,用于将所述待检测截屏图片与所述基准图片进行对比分析,并根据对比分析结果确定所述待检测截屏图片是否发生显示错乱。
通过本发明实施例提供的一种软件兼容性的测试装置,修正了软件测试时效率较低、准确性差的缺陷,实现了高效、准确、科学地发现图片显示错乱的兼容性问题,对提升相关产品的商业价值起到了重要作用。
在上述实施例的基础上,图片获取模块610包括:
待检测截屏图片获取单元,用于接收被测终端设备发送的待检测截屏图片;
基准图片获取单元,用于接收控制终端设备发送的基准图片,所述基准图片是所述控制终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是所述控制终端设备通过对应用程序的测试脚本文件进行解析得到;或者,
用于读取本地存储的基准图片。
在上述实施例的基础上,图片对比模块620,包括:
图片错乱确定单元,用于将所述待检测截屏图片中的显示图片与所述基准图片中的对应图片进行相似度比较,并根据比较结果确定所述待检测截屏图片是否发生图片错乱;和/或,
界面错乱确定单元,用于将所述待检测截屏图片与所述基准图片进行相似度比较,并根据比较结果确定所述待检测截屏图片是否发生界面错乱。
在上述实施例的基础上,所述图片错乱确定单元,包括:
第一基准位置确定子单元,用于根据所述基准图片的尺寸以及所述基准图片中显示图片的尺寸,确定所述显示图片在所述基准图片中的第一基准位置;
第二基准位置确定子单元,用于根据所述待检测截屏图片的尺寸和所述第一基准位置,确定所述显示图片在所述待检测截屏图片中的第二基准位置;
目标图片获取子单元,用于根据所述第二基准位置在所述待检测截屏图片中进行图片裁剪得到目标图片;
图片错乱确定子单元,用于将所述显示图片和所述目标图片进行相似度比较,并根据比较结果确定所述待检测截屏图片是否发生图片错乱。
在上述实施例的基础上,所述第一基准位置确定子单元,具体用于:
按照如下公式确定所述显示图片在所述基准图片中的基准坐标,作为第一基准位置:
δ(x1,y1)=(a,b);
δ(x2,y1)=δ(x1+L3,y1);
δ(x1,y2)=δ(x1,y1+W3);
δ(x2,y2)=δ(x1+L3,y1+W3);
其中,δ(x1,y1)、δ(x2,y1)、δ(x1,y2)和δ(x2,y2)为所述显示图片在所述基准图片中的基准坐标;L3为所述显示图片的长,W3为所述显示图片的宽;a为所述显示图片相对所述基准图片的左上角的横向偏移量,b为所述显示图片相对所述基准图片的左上角的纵向偏移量。
在上述实施例的基础上,所述第二基准位置确定子单元,具体用于:
按照如下公式确定所述显示图片在所述待检测截屏图片中的基准坐标,作为第二基准位置:
Λ(x1,y1)=Λ(L2×δx1/L1,W2×δy1/W1);
Λ(x2,y1)=Λ(L2×δx2/L1,W2×δy1/W1);
Λ(x1,y2)=Λ(L2×δx1/L1,W2×δy2/W1);
Λ(x2,y2)=Λ(L2×δx2/L1,W2×δy2/W1);
其中,Λ(x1,y1)、Λ(x2,y1)、Λ(x1,y2)和Λ(x2,y2)为所述显示图片在所述待检测截屏图片中的基准坐标;L1为所述基准图片的长,W1为所述基准图片的宽;L2为所述待检测截屏图片的长,W2为所述待检测截屏图片的宽。
在上述实施例的基础上,该装置还包括:
日志信息接收模块,用于在接收所述被测终端设备发送的待检测截屏图片时,接收所述被测终端设备发送的应用程序运行参数和/或执行对应截屏操作前记录的日志信息;
错误检测报告生成模块,用于在确定所述待检测截屏图片发生显示错乱时,根据所述应用程序运行参数和/或所述日志信息生成错误检测报告;
其中,所述应用程序运行参数包括:机型、系统版本或分辨率中的至少一个;所述日志信息包括执行的操作指令信息。
本实施例提供的应用于服务器的软件兼容性的测试装置,可执行本发明任意实施例所提供的应用于服务器的软件兼容性的测试方法,具备执行方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的应用于服务器的软件兼容性的测试方法。
实施例七
图9为本发明实施例七提供的一种软件兼容性的测试装置的结构框图,该测试装置可以通过软件和/或硬件的方式实现,配置于终端设备中,参见图9,该装置具体包括:测试指令获取模块710和测试指令执行模块720。
其中,测试指令获取模块710,配置于被测终端设备中,用于获取通过对应用程序的测试脚本文件进行解析得到的测试指令;
测试指令执行模块,配置于被测终端设备中,用于解释执行所述测试指令;其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:执行截屏操作并将截屏操作得到的图片作为待检测截屏图片发送给服务器,以使服务器检测所述待检测截屏图片是否发生显示错乱。
通过本发明实施例提供的一种软件兼容性的测试装置,修正了软件测试时效率较低、准确性差的缺陷,实现了高效、准确、科学地发现图片显示错乱的兼容性问题,对提升相关产品的商业价值起到了重要作用。
在上述实施例的基础上,该装置还包括:测试指令执行模块,配置与控制终端设备中,用于解释执行通过对测试脚本文件进行解析得到的测试指令;
其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:在所述测试指令为截屏指令时,执行截屏操作并将截屏操作得到的图片作为检测时的基准图片发送给服务器。
在上述实施例的基础上,测试指令获取模块710,具体用于:
被测终端设备从控制终端设备接收测试指令,所述测试指令是所述控制终端设备通过对测试脚本文件进行解析得到的。
在上述实施例的基础上,该装置还包括:
数据发送模块,配置于被测终端设备中,用于将应用程序运行参数和/或执行所述截屏操作前记录的日志信息发送给服务器,以使服务器根据所述应用程序运行参数和/或所述日志信息生成错误检测报告;
其中,所述应用程序运行参数包括:机型、系统版本或分辨率中的至少一个;所述日志信息包括执行的操作指令信息。
本实施例提供的应用于终端设备的软件兼容性的测试装置,可执行本发明任意实施例所提供的应用于终端设备的软件兼容性的测试方法,具备执行方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的应用于终端设备的软件兼容性的测试方法。
实施例八
图10为本发明实施例八提供的一种服务器的结构示意图。图10示出了适于用来实现本发明实施方式的示例性服务器12的框图。图10显示的服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图10所示,服务器12以通用计算设备的形式表现。服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图10未显示,通常称为“硬盘驱动器”)。尽管图10中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该服务器12交互的设备通信,和/或与使得该服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的应用于服务器的软件兼容性的测试方法,该方法包括:
接收被测终端设备发送的待检测截屏图片,并获取基准图片;其中,所述待测截屏图片是所述被测终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是通过对应用程序的测试脚本文件进行解析得到;
将所述待检测截屏图片与所述基准图片进行对比分析,并根据对比分析结果确定所述待检测截屏图片是否发生显示错乱。
当然,本领域技术人员可以理解,处理器或处理单元16还可以实现本发明任意实施例所提供的应用于服务器的软件兼容性的测试方法。
本发明实施例还提供了一种终端设备,该终端设备包括一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器本发明实施例所提供的应用于终端设备的软件兼容性的测试方法。该方法包括:
获取通过对应用程序的测试脚本文件进行解析得到的测试指令;
解释执行所述测试指令;其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:执行截屏操作并将截屏操作得到的图片作为待检测截屏图片发送给服务器,以使服务器检测所述待检测截屏图片是否发生显示错乱。
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的应用于终端设备的软件兼容性的测试方法的技术方案。该设备的硬件结构以及功能可参见实施例八的内容解释。
实施例九
本发明实施例九还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例所提供的应用于服务器的软件兼容性的测试方法,该方法包括:
接收被测终端设备发送的待检测截屏图片,并获取基准图片;其中,所述待测截屏图片是所述被测终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是通过对应用程序的测试脚本文件进行解析得到;
将所述待检测截屏图片与所述基准图片进行对比分析,并根据对比分析结果确定所述待检测截屏图片是否发生显示错乱。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的应用于服务器的软件兼容性的测试方法中的相关操作。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本发明实施例还提供了另一种计算机可读存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种应用于终端设备的软件兼容性的测试方法,该方法包括:
获取通过对应用程序的测试脚本文件进行解析得到的测试指令;
解释执行所述测试指令;其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:执行截屏操作并将截屏操作得到的图片作为待检测截屏图片发送给服务器,以使服务器检测所述待检测截屏图片是否发生显示错乱。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的应用于终端设备的软件兼容性的测试方法中的相关操作。对存储介质的介绍可参见实施例九中的内容解释。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (17)

1.一种软件兼容性的测试方法,应用于服务器,其特征在于,包括:
接收被测终端设备发送的待检测截屏图片,并获取基准图片;其中,所述待测截屏图片是所述被测终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是通过对应用程序的测试脚本文件进行解析得到;
将所述待检测截屏图片与所述基准图片进行对比分析,并根据对比分析结果确定所述待检测截屏图片是否发生显示错乱。
2.根据权利要求1所述的方法,其特征在于,所述获取基准图片,包括:
接收控制终端设备发送的基准图片,所述基准图片是所述控制终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是所述控制终端设备通过对应用程序的测试脚本文件进行解析得到;或者,
读取本地存储的基准图片。
3.根据权利要求1所述的方法,其特征在于,将所述待检测截屏图片与所述基准图片进行对比分析,并根据对比分析结果确定所述待检测截屏图片是否发生显示错乱,包括:
将所述待检测截屏图片中的显示图片与所述基准图片中的对应图片进行相似度比较,并根据比较结果确定所述待检测截屏图片是否发生图片错乱;
和/或,
将所述待检测截屏图片与所述基准图片进行相似度比较,并根据比较结果确定所述待检测截屏图片是否发生界面错乱。
4.根据权利要求3所述的方法,其特征在于,将所述待检测截屏图片中的显示图片与所述基准图片中的对应图片进行相似度比较,并根据比较结果确定所述待检测截屏图片是否发生图片错乱,包括:
根据所述基准图片的尺寸以及所述基准图片中显示图片的尺寸,确定所述显示图片在所述基准图片中的第一基准位置;
根据所述待检测截屏图片的尺寸和所述第一基准位置,确定所述显示图片在所述待检测截屏图片中的第二基准位置;
根据所述第二基准位置在所述待检测截屏图片中进行图片裁剪得到目标图片;
将所述显示图片和所述目标图片进行相似度比较,并根据比较结果确定所述待检测截屏图片是否发生图片错乱。
5.根据权利要求4所述的方法,其特征在于,根据所述基准图片的尺寸以及所述基准图片中显示图片的尺寸,确定所述显示图片在所述基准图片中的第一基准位置,包括:
按照如下公式确定所述显示图片在所述基准图片中的基准坐标,作为第一基准位置:
δ(x1,y1)=(a,b);
δ(x2,y1)=δ(x1+L3,y1);
δ(x1,y2)=δ(x1,y1+W3);
δ(x2,y2)=δ(x1+L3,y1+W3);
其中,δ(x1,y1)、δ(x2,y1)、δ(x1,y2)和δ(x2,y2)为所述显示图片在所述基准图片中的基准坐标;L3为所述显示图片的长,W3为所述显示图片的宽;a为所述显示图片相对所述基准图片的左上角的横向偏移量,b为所述显示图片相对所述基准图片的左上角的纵向偏移量。
6.根据权利要求5所述的方法,其特征在于,根据所述待检测截屏图片的尺寸和所述第一基准位置,确定所述显示图片在所述待检测截屏图片中的第二基准位置,包括:
按照如下公式确定所述显示图片在所述待检测截屏图片中的基准坐标,作为第二基准位置:
Λ(x1,y1)=Λ(L2×δx1/L1,W2×δy1/W1);
Λ(x2,y1)=Λ(L2×δx2/L1,W2×δy1/W1);
Λ(x1,y2)=Λ(L2×δx1/L1,W2×δy2/W1);
Λ(x2,y2)=Λ(L2×δx2/L1,W2×δy2/W1);
其中,Λ(x1,y1)、Λ(x2,y1)、Λ(x1,y2)和Λ(x2,y2)为所述显示图片在所述待检测截屏图片中的基准坐标;L1为所述基准图片的长,W1为所述基准图片的宽;L2为所述待检测截屏图片的长,W2为所述待检测截屏图片的宽。
7.根据权利要求1-6中任一项所述的方法,其特征在于,在接收所述被测终端设备发送的待检测截屏图片时,所述方法还包括:
接收所述被测终端设备发送的应用程序运行参数和/或执行对应截屏操作前记录的日志信息;
在确定所述待检测截屏图片发生显示错乱时,根据所述应用程序运行参数和/或所述日志信息生成错误检测报告;
其中,所述应用程序运行参数包括:机型、系统版本或分辨率中的至少一个;所述日志信息包括执行的操作指令信息。
8.一种软件兼容性的测试装置,应用于服务器,其特征在于,包括:
图片获取模块,接收被测终端设备发送的待检测截屏图片,并获取基准图片;其中,所述待检测截屏图片是所述被测终端设备解释执行测试指令中的截屏指令得到的,所述测试指令是通过对应用程序的测试脚本文件进行解析得到;
图片对比模块,用于将所述待检测截屏图片与所述基准图片进行对比分析,并根据对比分析结果确定所述待检测截屏图片是否发生显示错乱。
9.一种软件兼容性的测试方法,应用于终端设备,其特征在于,包括:
被测终端设备获取通过对应用程序的测试脚本文件进行解析得到的测试指令;
被测终端设备解释执行所述测试指令;其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:执行截屏操作并将截屏操作得到的图片作为待检测截屏图片发送给服务器,以使服务器检测所述待检测截屏图片是否发生显示错乱。
10.根据权利要求9所述的方法,其特征在于,还包括:
控制终端设备解释执行通过对测试脚本文件进行解析得到的测试指令;
其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:在所述测试指令为截屏指令时,执行截屏操作并将截屏操作得到的图片作为检测时的基准图片发送给服务器。
11.根据权利要求9所述的方法,其特征在于,被测终端设备获取通过对应用程序的测试脚本文件进行解析得到的测试指令,包括:
被测终端设备从控制终端设备接收测试指令,所述测试指令是所述控制终端设备通过对测试脚本文件进行解析得到的。
12.根据权利要求9-11中任一项所述的方法,其特征在于,被测终端设备在将所述待检测截屏图片发送给服务器时,所述方法还包括:
被测终端设备将应用程序运行参数和/或执行所述截屏操作前记录的日志信息发送给服务器,以使服务器根据所述应用程序运行参数和/或所述日志信息生成错误检测报告;
其中,所述应用程序运行参数包括:机型、系统版本或分辨率中的至少一个;所述日志信息包括执行的操作指令信息。
13.一种软件兼容性的测试装置,应用于终端设备,其特征在于,包括:
测试指令获取模块,配置于被测终端设备中,用于获取通过对应用程序的测试脚本文件进行解析得到的测试指令;
测试指令执行模块,配置于被测终端设备中,用于解释执行所述测试指令;其中,所述测试指令包括截屏指令,所述截屏指令对应的执行操作为:执行截屏操作并将截屏操作得到的图片作为待检测截屏图片发送给服务器,以使服务器检测所述待检测截屏图片是否发生显示错乱。
14.一种服务器,其特征在于,所述服务器包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的应用于服务器的软件兼容性的测试方法。
15.一种终端设备,其特征在于,所述终端设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求9-12中任一所述的应用于终端设备的软件兼容性的测试方法。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的应用于服务器的软件兼容性的测试方法。
17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求9-12中任一所述的应用于终端设备的软件兼容性的测试方法。
CN201810804807.9A 2018-07-20 2018-07-20 软件兼容性的测试方法、装置、服务器、设备和存储介质 Pending CN108920380A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810804807.9A CN108920380A (zh) 2018-07-20 2018-07-20 软件兼容性的测试方法、装置、服务器、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810804807.9A CN108920380A (zh) 2018-07-20 2018-07-20 软件兼容性的测试方法、装置、服务器、设备和存储介质

Publications (1)

Publication Number Publication Date
CN108920380A true CN108920380A (zh) 2018-11-30

Family

ID=64416837

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810804807.9A Pending CN108920380A (zh) 2018-07-20 2018-07-20 软件兼容性的测试方法、装置、服务器、设备和存储介质

Country Status (1)

Country Link
CN (1) CN108920380A (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109840212A (zh) * 2019-02-19 2019-06-04 百度在线网络技术(北京)有限公司 应用程序的功能测试方法、装置、设备及可读存储介质
CN109885480A (zh) * 2019-01-14 2019-06-14 珠海金山网络游戏科技有限公司 一种基于调试桥的自动化界面兼容性测试方法及装置
CN110321257A (zh) * 2019-05-22 2019-10-11 深圳壹账通智能科技有限公司 异形屏兼容性测试方法、装置、计算机设备和存储介质
CN110347587A (zh) * 2019-05-30 2019-10-18 平安银行股份有限公司 App兼容性测试方法、装置、计算机设备及存储介质
CN110442290A (zh) * 2019-07-29 2019-11-12 吴新建 一种城市安全系统的数据获取方法、装置及存储介质
CN110674039A (zh) * 2019-09-20 2020-01-10 广州虎牙科技有限公司 多设备同步测试方法、装置、服务器及存储介质
CN110688318A (zh) * 2019-09-27 2020-01-14 京东数字科技控股有限公司 程序测试方法和装置
CN111984529A (zh) * 2020-07-22 2020-11-24 华帝股份有限公司 App软件兼容性自动化测试方法
CN112199268A (zh) * 2019-07-08 2021-01-08 中移互联网有限公司 一种软件兼容性测试方法及电子设备
CN112380116A (zh) * 2020-11-10 2021-02-19 深圳市共进电子股份有限公司 浏览器对比测试方法、装置和浏览器数据转发方法
CN113268407A (zh) * 2020-02-17 2021-08-17 北京沃东天骏信息技术有限公司 页面测试方法及装置、计算机存储介质、电子设备
WO2021159736A1 (zh) * 2020-09-27 2021-08-19 平安科技(深圳)有限公司 应用程序兼容性测试的方法、装置及计算机设备
CN113722203A (zh) * 2020-05-26 2021-11-30 京东数字科技控股有限公司 程序测试方法及装置、电子设备和计算机可读存储介质
CN114153726A (zh) * 2021-11-25 2022-03-08 麒麟软件有限公司 一种基于linux桌面操作系统的登录测试方法及装置
WO2023178892A1 (zh) * 2022-03-22 2023-09-28 通号智慧城市研究设计院有限公司 应用软件测试方法、电子设备和计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104978270A (zh) * 2015-07-03 2015-10-14 上海触乐信息科技有限公司 一种自动化地软件测试方法和装置
CN105681813A (zh) * 2014-11-19 2016-06-15 Tcl集团股份有限公司 一种基于Android系统的图片处理方法及系统
WO2017099262A1 (ko) * 2015-12-07 2017-06-15 파워테크주식회사 영상화면비교부를 갖는 cctv 시스템 관리방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105681813A (zh) * 2014-11-19 2016-06-15 Tcl集团股份有限公司 一种基于Android系统的图片处理方法及系统
CN104978270A (zh) * 2015-07-03 2015-10-14 上海触乐信息科技有限公司 一种自动化地软件测试方法和装置
WO2017099262A1 (ko) * 2015-12-07 2017-06-15 파워테크주식회사 영상화면비교부를 갖는 cctv 시스템 관리방법

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109885480A (zh) * 2019-01-14 2019-06-14 珠海金山网络游戏科技有限公司 一种基于调试桥的自动化界面兼容性测试方法及装置
CN109885480B (zh) * 2019-01-14 2022-07-01 珠海金山网络游戏科技有限公司 一种基于调试桥的自动化界面兼容性测试方法及装置
CN109840212A (zh) * 2019-02-19 2019-06-04 百度在线网络技术(北京)有限公司 应用程序的功能测试方法、装置、设备及可读存储介质
CN110321257A (zh) * 2019-05-22 2019-10-11 深圳壹账通智能科技有限公司 异形屏兼容性测试方法、装置、计算机设备和存储介质
CN110347587A (zh) * 2019-05-30 2019-10-18 平安银行股份有限公司 App兼容性测试方法、装置、计算机设备及存储介质
CN110347587B (zh) * 2019-05-30 2023-08-22 平安银行股份有限公司 App兼容性测试方法、装置、计算机设备及存储介质
CN112199268A (zh) * 2019-07-08 2021-01-08 中移互联网有限公司 一种软件兼容性测试方法及电子设备
CN112199268B (zh) * 2019-07-08 2023-08-15 中移互联网有限公司 一种软件兼容性测试方法及电子设备
CN110442290A (zh) * 2019-07-29 2019-11-12 吴新建 一种城市安全系统的数据获取方法、装置及存储介质
CN110674039A (zh) * 2019-09-20 2020-01-10 广州虎牙科技有限公司 多设备同步测试方法、装置、服务器及存储介质
CN110688318A (zh) * 2019-09-27 2020-01-14 京东数字科技控股有限公司 程序测试方法和装置
CN113268407A (zh) * 2020-02-17 2021-08-17 北京沃东天骏信息技术有限公司 页面测试方法及装置、计算机存储介质、电子设备
CN113722203A (zh) * 2020-05-26 2021-11-30 京东数字科技控股有限公司 程序测试方法及装置、电子设备和计算机可读存储介质
CN111984529A (zh) * 2020-07-22 2020-11-24 华帝股份有限公司 App软件兼容性自动化测试方法
WO2021159736A1 (zh) * 2020-09-27 2021-08-19 平安科技(深圳)有限公司 应用程序兼容性测试的方法、装置及计算机设备
CN112380116A (zh) * 2020-11-10 2021-02-19 深圳市共进电子股份有限公司 浏览器对比测试方法、装置和浏览器数据转发方法
CN114153726A (zh) * 2021-11-25 2022-03-08 麒麟软件有限公司 一种基于linux桌面操作系统的登录测试方法及装置
CN114153726B (zh) * 2021-11-25 2024-05-17 麒麟软件有限公司 一种基于linux桌面操作系统的登录测试方法及装置
WO2023178892A1 (zh) * 2022-03-22 2023-09-28 通号智慧城市研究设计院有限公司 应用软件测试方法、电子设备和计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN108920380A (zh) 软件兼容性的测试方法、装置、服务器、设备和存储介质
CN110362483B (zh) 性能数据采集方法、装置、设备及存储介质
CN109815156A (zh) 页面中视觉元素的展示测试方法、装置、设备和存储介质
CN110221979A (zh) 应用程序的性能测试方法、装置、设备及存储介质
CN104461903B (zh) 基于浏览器的测试客户端的方法和装置
CN108307021B (zh) 移动终端的并行跟随测试设备、云真机及方法
CN104794050A (zh) 应用程序的测试方法、装置及系统
CN110554831B (zh) 操作同步方法、装置、设备及存储介质
CN107133165B (zh) 浏览器兼容性检测方法及装置
CN108062377A (zh) 标签图片集的建立、标签的确定方法、装置、设备及介质
CN110175609A (zh) 界面元素检测方法、装置及设备
CN112437343B (zh) 基于浏览器的封面生成方法和系统
CN109308254A (zh) 一种测试方法、装置及测试设备
CN109101228A (zh) 应用程序的执行方法和装置
CN109783360A (zh) 操作系统对比测试方法与装置、电子设备、存储介质
CN110826646A (zh) 机器人视觉测试方法、装置、存储介质及终端设备
CN107276842A (zh) 接口测试方法、装置及电子设备
CN110248235B (zh) 软件教学方法、装置、终端设备及介质
CN107193747A (zh) 代码测试方法、装置和计算机设备
KR102440198B1 (ko) 시각 검색 방법, 장치, 컴퓨터 기기 및 저장 매체 (video search method and apparatus, computer device, and storage medium)
CN114049631A (zh) 一种数据标注的方法、装置、计算机设备和存储介质
CN113138916A (zh) 基于标注样本的图片结构化算法的自动测试方法及系统
CN112633341A (zh) 一种界面测试方法、装置、计算机设备和存储介质
CN110688602A (zh) 网页加载速度的测试方法、装置及系统
CN114679402B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20181130

RJ01 Rejection of invention patent application after publication