CN112286821A - Html5页面兼容性的测试方法、装置、设备及存储介质 - Google Patents
Html5页面兼容性的测试方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112286821A CN112286821A CN202011214544.XA CN202011214544A CN112286821A CN 112286821 A CN112286821 A CN 112286821A CN 202011214544 A CN202011214544 A CN 202011214544A CN 112286821 A CN112286821 A CN 112286821A
- Authority
- CN
- China
- Prior art keywords
- test
- tested
- html5
- page
- terminal
- 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
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
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及测试领域,揭露了一种HTML5页面兼容性的测试方法、装置、设备及存储介质,该方法包括:测试终端下载预先配置的测试脚本,执行测试脚本以分别对连接的多台待测终端执行准备测试步骤、加载测试步骤及相似度对比测试步骤,本发明可以实现一键触发完成多个浏览器的不同版本的HTML5页面兼容性测试,能够提高HTML5兼容性测试的效率,简化测试手段。
Description
技术领域
本发明涉及测试技术领域,尤其涉及一种HTML5页面兼容性的测试方法、装置、设备及存储介质。
背景技术
目前,在测试HTML5页面兼容性的过程中除了要关注HTML5页面本身的功能,还需要进行HTML5页面在多个终端上不同浏览器以及版本上的兼容性测试。目前,该测试需要多种不同品牌的终端,在不同品牌的终端上手动安装多个的浏览器,每个浏览器需要安装多个不同版本,在测试时需要逐个终端进行测试,需要测试人员在浏览器中打开HTML5页面的地址,查看HTML5页面的测试过程,手动操作较多,同样,在微信端的浏览器中测试HTML5页面兼容性也是需要手动操作,整个HTML5页面兼容性测试耗费的人力非常大,测试效率低,测试操作繁琐。
发明内容
本发明的目的在于提供一种HTML5页面兼容性的测试方法、装置、设备及存储介质,旨在提高HTML5兼容性测试的效率,简化测试手段。
本发明提供一种HTML5页面兼容性的测试方法,包括:测试终端下载预先配置的测试脚本,执行测试脚本以分别对连接的多台待测终端执行准备测试步骤、加载测试步骤及相似度对比测试步骤,其中:
所述准备测试步骤包括:获取连接的各待测终端对应的设备信息,检测各待测终端是否安装有与所述设备信息对应的待测浏览器;若否,则发送安装指令至对应的待测终端,以获取待测浏览器的安装包并安装待测浏览器,其中,所述待测浏览器包括多个版本;
所述加载测试步骤包括:发送加载测试指令至各待测终端,以打开所述待测浏览器并输入HTML5页面的链接,执行HTML5页面加载速度测试、在所述HTML5页面的链接所在的HTML5页面中依次执行HTML5页面空白测试及执行HTML5页面元素加载测试;
所述相似度对比测试步骤包括:在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试,并在完成所述相似度对比测试后执行所述待测浏览器的其他版本的测试或者下一待测浏览器的测试。
本发明还提供一种测试装置,所述测试装置通过USB转接器连接多台待测终端,所述测试装置下载有预先配置的测试脚本,所述测试装置执行所述测试脚本时实现准备测试模块、加载测试模块及相似度对比测试模块的功能,包括:
所述准备测试模块,用于获取连接的各待测终端对应的设备信息,检测各待测终端是否安装有与所述设备信息对应的待测浏览器;若否,则发送安装指令至对应的待测终端,以获取待测浏览器的安装包并安装待测浏览器,其中,所述待测浏览器包括多个版本;
所述加载测试模块,用于发送加载测试指令至各待测终端,以打开所述待测浏览器并输入HTML5页面的链接,执行HTML5页面加载速度测试、在所述HTML5页面的链接所在的HTML5页面中依次执行HTML5页面空白测试及执行HTML5页面元素加载测试;
所述相似度对比测试模块,用于在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试,并在完成所述相似度对比测试后执行所述待测浏览器的其他版本的测试或者下一待测浏览器的测试。
本发明还提供一种计算机设备,所述计算机设备包括存储器及与所述存储器连接的处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述的HTML5页面兼容性的测试方法的步骤。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的HTML5页面兼容性的测试方法的步骤。
本发明的有益效果是:本发明建立一拖多的测试环境,将多台待测终端连接到测试终端,实现一台测试终端同时测试多台手机设备,通过下载预先配置的测试脚本,可以实现一键触发完成多个浏览器的不同版本的HTML5页面兼容性测试,包括准备测试、加载测试、相似度对比测试,本发明能够提高HTML5兼容性测试的效率,简化测试手段。
附图说明
图1为本发明HTML5页面兼容性的测试方法一实施例的应用环境示意图;
图2为本发明HTML5页面兼容性的测试方法第一实施例的流程示意图;
图3为图2中对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试的步骤的细化流程示意图;
图4为本发明HTML5页面兼容性的测试方法第二实施例的流程示意图;
图5为图4中所述微信测试步骤的细化流程示意图;
图6为本发明HTML5页面兼容性的测试方法第三实施例的流程示意图;
图7为本发明测试装置一实施例的结构示意图;
图8为本发明计算机设备一实施例的硬件架构的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明HTML5页面兼容性的测试方法一实施例的应用环境示意图。在该实施例中,测试终端1与多台待测终端2通过USB转接器连接,测试终端1下载预先配置的测试脚本。通过执行测试脚本,分别对多台待测终端进行HTML5页面在多个浏览器的不同版本中的兼容性测试。
本发明提供的HTML5页面兼容性的测试方法,可应用在如图1的应用环境中。其中,测试终端可以包括但不限于各种个人计算机、笔记本电脑、平板电脑和便携式可穿戴设备等。待测终端2可以包括智能手机、笔记本电脑、平板电脑等。
参阅图2所示,为本发明HTML5页面兼容性的测试方法第一实施例的流程示意图。以所述HTML5页面兼容性的测试方法应用在图1的环境中为例进行说明,包括准备测试步骤S1、加载测试步骤S2、相似度对比测试步骤S3,其中:
所述准备测试步骤S1包括:获取连接的各待测终端对应的设备信息,检测各待测终端是否安装有与所述设备信息对应的待测浏览器;若否,则发送安装指令至对应的待测终端,以获取待测浏览器的安装包并安装待测浏览器,其中,所述待测浏览器包括多个版本;
本实施例中,建立一拖多的测试环境,将多台待测终端通过USB转接器连接到测试终端,实现一台测试终端同时测试多台终端设备,如果需要测试更多的终端设备的兼容性,则可以再继续搭建一个或多个测试环境。测试脚本基于本实施例的测试环境进行配置,通过配置的测试脚本及建立的测试环境,可以实现一键触发完成多个待测浏览器的不同版本的HTML5页面的测试。
本实施例中,待测终端对应的设备信息包括型号、系统版本、分辨率、主屏尺寸等。若有待测终端未安装有与设备信息对应的待测浏览器,则发送安装指令至对应的待测终端,待测终端根据安装指令从资源池中获取对应的安装包,在待测终端进行安装。作为一个整体的方案,本实施例还对资源池中的安装包进行维护(包括添加新的安装包、删除无用的安装包等),以使得测试能够顺序执行。
所述加载测试步骤S2包括:发送加载测试指令至各待测终端,以打开所述待测浏览器并输入HTML5页面的链接,执行HTML5页面加载速度测试、在所述HTML5页面的链接所在的HTML5页面中依次执行HTML5页面空白测试及执行HTML5页面元素加载测试;
进一步地,所述执行HTML5页面加载速度测试,具体包括:
发送安装指令至各待测终端中,在各待测终端中安装监控HTML5页面加载速度的监控程序,通过所述监控程序监控各待测终端的HTML5页面加载速度,接收所述监控程序反馈的监控结果。
其中,若HTML5页面在预定的时间内加载完成,则HTML5页面加载速度正常,若HTML5页面在预定的时间内未加载完成,则HTML5页面加载速度异常,并标记该待测终端的HTML5页面加载速度测试异常。
本实施例中,HTML5页面空白测试包括检测HTML5页面是否整体空白、图片中间是否有很大的空白或错误提示,这类异常结构简单特征明显。若不存在空白且图片没有错误提示,则HTML5页面空白测试正常,若存在空白的区域,则HTML5页面空白测试异常,并标记该待测终端的HTML5页面空白测试异常。如果HTML5页面空白测试正常,则执行下面的HTML5页面元素加载测试。
进一步地,所述执行HTML5页面元素加载测试,具体包括:
判断所述HTML5页面中是否存在预定的页面元素,所述页面元素至少包括文本、控件及图片;
若是,则识别所述页面元素是否异常;
若否,则从预设的HTML5元素集中获取所述页面元素并加载至所述HTML5页面中,再次识别所加载的页面元素是否异常。
进一步地,所述识别所述页面元素是否异常的步骤,进一步包括:
识别所述文本的语义是否异常及识别所述文本的显示是否与预存的文本不一致,通过预定的查找方式识别所述控件是否异常,查找所述图片是否存在及显示是否异常。
本实施例中,预设的HTML5元素集可以存储在资源池中。其中,文本通过OCR技术逐行识别,分析识别后的文本的语义是否异常,如果语义异常,或与预存的文本显示不一致,则标记HTML5页面元素加载测试异常。通过图片查找的方式验证HTML5页面中是否存在异常控件,如果存在异常控件,则标记HTML5页面元素加载测试异常,例如,查找到HTML5页面包含了图片的打底图,说明有图片加载异常,查找到出有loading控件,可能在这个下载场景长时间卡住,查找到出有error的HUD表示异常提示,最后识别出异常控件的类型以及在HTML5页面的位置和异常的数量。通过查找的方式分析HTML5页面中是否显示有图片,如果不显示有图片,则标记该待测终端的HTML5页面元素加载测试异常。如果文本的语义正常、HTML5页面中不存在异常控件且HTML5页面中显示有图片,则HTML5页面元素加载测试正常,可以执行下面的相似度对比测试。
所述相似度对比测试步骤S3包括:在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试,并在完成所述相似度对比测试后执行所述待测浏览器的其他版本的测试或者下一待测浏览器的测试;
进一步地,所述设备信息包括分辨率、主屏尺寸,如图3所示,所述在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试的步骤,具体包括:
步骤S31,发送截屏指令至各待测终端,以滑动所述HTML5页面,获取滑动幅度,累加所述滑动幅度,当累加的滑动幅度与所述主屏尺寸中的高度相等时,接收截屏指令并进行截屏得到第一屏图片;
步骤S32,当滑动到最后一屏时,若累加的滑动幅度小于所述主屏尺寸中的高度,则获取当前屏幕图片与最后一屏累加的滑动幅度对应的图片的差异部分,将该差异部分作为最后一屏图片;
步骤S33,接收拼接指令并依次将所述第一屏图片至最后一屏图片进行拼接得到所述长截屏图片;
步骤S34,计算所述长截屏图片与预存的标准图片的相似度以进行相似度对比测试。
其中,在接收到截屏指令后滑动HTML5页面,后台通过adb shell input swipe来模拟滑动固定的像素数目,通过像素数目的累加得到滑动幅度。当累加的滑动幅度与主屏尺寸中的高度相等时通过adb命令截屏,得到第一屏图片。之后,按照与上述操作截屏得到第二屏图片,直至最后一屏。当滑动到最后一屏时,如果累加的滑动幅度小于主屏尺寸中的高度,则需要进行去重处理,即获取当前屏幕图片与最后一屏累加的滑动幅度对应的图片的差异部分,作为最后一屏图片。通过拼接指令OpenCv拼接截屏图片得到长截屏图片。
其中,若长截屏图片与预存的标准图片的相似度大于等于预设阈值(例如预设阈值为0.98),则相似度对比测试通过,若相似度小于预设阈值,相似度对比测试未通过,标记该待测终端相似度对比测试异常。
本实施例中,建立一拖多的测试环境,将多台待测终端通过USB转接器连接到测试终端,实现一台测试终端同时测试多台终端设备,通过下载预先配置的测试脚本,可以实现一键触发完成多个浏览器的不同版本的HTML5页面兼容性测试,提高HTML5兼容性测试的效率,简化测试手段。
在一实施例中,如图4所示,为本发明HTML5页面兼容性的测试方法第二实施例的流程示意图,其中,HTML5页面兼容性的测试方法还包括执行微信测试步骤,所述微信测试步骤S4包括:
向各待测终端的微信号发送HTML5页面的链接,在各待测终端登录微信,并基于微信自带的浏览器打开所述HTML5页面的链接所在的HTML5页面后,发送微信测试指令以再次执行所述加载测试步骤及相似度对比测试步骤。
进一步地,所述微信测试步骤,可以由微信机器人执行,该微信机器人为测试脚本中对应微信测试的部分,如图5所示,具体包括:
步骤S41,根据所述测试脚本中预置的微信测试账号登录微信,其中,所述微信测试账号分别与各待测终端对应的微信账号为好友关系,各待测终端的微信为最新版本的app;
步骤S42,通过所述微信测试账号向各待测终端对应的微信账号发送消息,所述消息为待测HTML5页面的url地址链接;
步骤S43,在发送所述消息成功后,通知各待测终端打开微信并使用微信自带的浏览器打开所述url地址链接,发送微信测试指令以再次执行所述加载测试步骤及相似度对比测试步骤。
其中,在微信测试账号登录微信之前,可以检测各待测终端是否安装最新版本的微信,如果有待测终端的微信不是最新版本的微信,则获取最新版本的微信安装包并安装。
在微信自带的浏览器打开HTML5页面时,执行如上相同的加载测试步骤及相似度对比测试步骤,以对微信自带的浏览器进行测试。
值得说明的是,上述加载测试步骤及相似度对比测试步骤作为一个整体,其可以在微信测试步骤之前执行,也可以在微信测试步骤之后执行,此处不做过多限制。
参阅图6所示,为本发明HTML5页面兼容性的测试方法第三实施例的流程示意图,所述相似度对比测试步骤之后,还包括:
步骤S5,若所述加载测试步骤及所述相似度对比测试步骤中的测试均通过,则将所述长截屏图片与对应的待测终端的设备信息进行关联并上传至测试报告平台,以作为HTML5页面在所述设备信息对应的待测终端中显示正常的标准图片。
考虑到后续可能使用到HTML5页面,可将本次的长截屏图片与对应的待测终端的型号、屏幕尺寸及分辨率等设备参数进行关联然后上传至测试报告平台,作为HTML5页面在不同终端显示正常的标准图片。
其中,在执行完上述加载测试步骤及相似度对比测试步骤后,可以执行所述待测浏览器的其他版本的测试或者下一待测浏览器的测试,直至将该待测终端的所有浏览器的不同版本测试完。
在一实施例中,本发明提供一种测试装置,测试装置通过USB转接器连接多台待测终端,所述测试装置下载有预先配置的测试脚本,所述测试装置执行所述测试脚本时实现准备测试模块、加载测试模块、相似度对比测试模块的功能,即该装置与上述实施例中HTML5页面兼容性的测试方法一一对应。如图7所示,该测试装置包括:
准备测试模块101,用于获取连接的各待测终端对应的设备信息,检测各待测终端是否安装有与所述设备信息对应的待测浏览器;若否,则发送安装指令至对应的待测终端,以获取待测浏览器的安装包并安装待测浏览器,其中,所述待测浏览器包括多个版本;
加载测试模块102,用于发送加载测试指令至各待测终端,以打开所述待测浏览器并输入HTML5页面的链接,执行HTML5页面加载速度测试、在所述HTML5页面的链接所在的HTML5页面中依次执行HTML5页面空白测试及执行HTML5页面元素加载测试;
相似度对比测试模块103,用于在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试,并在完成所述相似度对比测试后执行所述待测浏览器的其他版本的测试或者下一待测浏览器的测试;
测试装置的具体限定可以参见上文中对于HTML5页面兼容性的测试方法的限定,在此不再赘述。上述测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。所述计算机设备可以是PC(Personal Computer,个人电脑),或者是智能手机、平板电脑、计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
如图8所示,所述计算机设备可包括,但不仅限于,可通过系统总线相互通信连接的存储器11、处理器12、网络接口13,存储器11存储有可在处理器12上运行的计算机程序。需要指出的是,图8仅示出了具有组件11-13的计算机设备,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,存储器11可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。本实施例中,存储器11的可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如存储本发明一实施例中的计算机程序的程序代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片,用于运行所述存储器11中存储的程序代码或者处理数据,例如运行计算机程序等。
所述网络接口13可包括标准的无线网络接口、有线网络接口,该网络接口13通常用于在所述计算机设备与其他电子设备之间建立通信连接。
所述计算机程序存储在存储器11中,包括至少一个存储在存储器11中的计算机可读指令,该至少一个计算机可读指令可被处理器12执行,以实现本申请各实施例的方法,包括:
准备测试步骤:获取连接的各待测终端对应的设备信息,检测各待测终端是否安装有与所述设备信息对应的待测浏览器;若否,则发送安装指令至对应的待测终端,以获取待测浏览器的安装包并安装待测浏览器,其中,所述待测浏览器包括多个版本;
本实施例中,建立一拖多的测试环境,将多台待测终端通过USB转接器连接到测试终端,实现一台测试终端同时测试多台终端,如果需要测试更多的终端的兼容性,则可以再继续搭建一个或多个测试环境。测试脚本基于本实施例的测试环境进行配置,通过配置的测试脚本及建立的测试环境,可以实现一键触发完成多个待测浏览器的不同版本的HTML5页面的测试。
本实施例中,待测终端对应的设备信息包括型号、系统版本、分辨率、主屏尺寸等。若有待测终端未安装有与设备信息对应的待测浏览器,则从资源池中获取对应的安装包,在待测终端进行安装。作为一个整体的方案,本实施例还对资源池中的安装包进行维护(包括添加新的安装包、删除无用的安装包等),以使得测试能够顺序执行。
加载测试步骤:发送加载测试指令至各待测终端,以打开所述待测浏览器并输入HTML5页面的链接,执行HTML5页面加载速度测试、在所述HTML5页面的链接所在的HTML5页面中依次执行HTML5页面空白测试及执行HTML5页面元素加载测试;
进一步地,所述执行HTML5页面加载速度测试,具体包括:
发送安装指令至各待测终端中,在各待测终端中安装监控HTML5页面加载速度的监控程序,通过所述监控程序监控各待测终端的HTML5页面加载速度,接收所述监控程序反馈的监控结果。
其中,若HTML5页面在预定的时间内加载完成,则HTML5页面加载速度正常,若HTML5页面在预定的时间内未加载完成,则HTML5页面加载速度异常,并标记该待测终端的HTML5页面加载速度测试异常。
本实施例中,HTML5页面空白测试包括检测HTML5页面是否整体空白、图片中间是否有很大的空白或错误提示,这类异常结构简单特征明显。若不存在空白且图片没有错误提示,则HTML5页面空白测试正常,若存在空白的区域,则HTML5页面空白测试异常,并标记该待测终端的HTML5页面空白测试异常。如果HTML5页面空白测试正常,则执行下面的HTML5页面元素加载测试。
进一步地,所述执行HTML5页面元素加载测试,具体包括:
判断所述HTML5页面中是否存在预定的页面元素,所述页面元素至少包括文本、控件及图片;
若是,则识别所述页面元素是否异常;
若否,则从预设的HTML5元素集中获取所述页面元素并加载至所述HTML5页面中,再次识别所加载的页面元素是否异常。
进一步地,所述识别所述页面元素是否异常的步骤,进一步包括:
识别所述文本的语义是否异常及识别所述文本的显示是否与预存的文本不一致,通过预定的查找方式识别所述控件是否异常,查找所述图片是否存在及显示是否异常。
本实施例中,预设的HTML5元素集可以存储在资源池中。其中,文本通过OCR技术逐行识别,分析识别后的文本的语义是否异常,如果语义异常,或与预存的文本显示不一致,则标记HTML5页面元素加载测试异常。通过图片查找的方式验证HTML5页面中是否存在异常控件,如果存在异常控件,则标记HTML5页面元素加载测试异常,例如,查找到HTML5页面包含了图片的打底图,说明有图片加载异常,查找到出有loading控件,可能在这个下载场景长时间卡住,查找到出有error的HUD表示异常提示,最后识别出异常控件的类型以及在HTML5页面的位置和异常的数量。通过查找的方式分析HTML5页面中是否显示有图片,如果不显示有图片,则标记该待测终端的HTML5页面元素加载测试异常。如果文本的语义正常、HTML5页面中不存在异常控件且HTML5页面中显示有图片,则HTML5页面元素加载测试正常,可以执行下面的相似度对比测试。
所述相似度对比测试步骤包括:在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试,并在完成所述相似度对比测试后执行所述待测浏览器的其他版本的测试或者下一待测浏览器的测试;
进一步地,所述设备信息包括分辨率、主屏尺寸,所述在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试的步骤,具体包括:
发送截屏指令至各待测终端,以滑动所述HTML5页面,获取滑动幅度,累加所述滑动幅度,当累加的滑动幅度与所述主屏尺寸中的高度相等时,接收截屏指令并进行截屏得到第一屏图片;
当滑动到最后一屏时,若累加的滑动幅度小于所述主屏尺寸中的高度,则获取当前屏幕图片与最后一屏累加的滑动幅度对应的图片的差异部分,将该差异部分作为最后一屏图片;
接收拼接指令并依次将所述第一屏图片至最后一屏图片进行拼接得到所述长截屏图片;
计算所述长截屏图片与预存的标准图片的相似度以进行相似度对比测试。
其中,在接收到截屏指令后滑动HTML5页面,后台通过adb shell input swipe来模拟滑动固定的像素数目,通过像素数目的累加得到滑动幅度。当累加的滑动幅度与主屏尺寸中的高度相等时通过adb命令截屏,得到第一屏图片。之后,按照与上述操作截屏得到第二屏图片,直至最后一屏。当滑动到最后一屏时,如果累加的滑动幅度小于主屏尺寸中的高度,则需要进行去重处理,即获取当前屏幕图片与最后一屏累加的滑动幅度对应的图片的差异部分,作为最后一屏图片。通过拼接指令OpenCv拼接截屏图片得到长截屏图片。
其中,若长截屏图片与预存的标准图片的相似度大于等于预设阈值(例如预设阈值为0.98),则相似度对比测试通过,若相似度小于预设阈值,相似度对比测试未通过,标记该待测终端相似度对比测试异常。
在一个实施例中,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中HTML5页面兼容性的测试方法的步骤,例如图2所示的步骤S1至步骤S3。或者,计算机程序被处理器执行时实现上述实施例中多账户关联注册的方法装置的各模块/单元的功能,例如图7所示模块101至模块103的功能。为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种HTML5页面兼容性的测试方法,其特征在于,包括:下载预先配置的测试脚本,执行测试脚本以分别对连接的多台待测终端执行准备测试步骤、加载测试步骤及相似度对比测试步骤,其中:
所述准备测试步骤包括:获取连接的各待测终端对应的设备信息,检测各待测终端是否安装有与所述设备信息对应的待测浏览器;若否,则发送安装指令至对应的待测终端,以获取待测浏览器的安装包并安装待测浏览器,其中,所述待测浏览器包括多个版本;
所述加载测试步骤包括:发送加载测试指令至各待测终端,以打开所述待测浏览器并输入HTML5页面的链接,执行HTML5页面加载速度测试、在所述HTML5页面的链接所在的HTML5页面中依次执行HTML5页面空白测试及执行HTML5页面元素加载测试;
所述相似度对比测试步骤包括:在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试,并在完成所述相似度对比测试后执行所述待测浏览器的其他版本的测试或者下一待测浏览器的测试。
2.根据权利要求1所述的HTML5页面兼容性的测试方法,其特征在于,所述执行HTML5页面加载速度测试,具体包括:
发送安装指令至各待测终端中,在各待测终端中安装监控HTML5页面加载速度的监控程序,通过所述监控程序监控各待测终端的HTML5页面加载速度,接收所述监控程序反馈的监控结果。
3.根据权利要求1所述的HTML5页面兼容性的测试方法,其特征在于,所述执行HTML5页面元素加载测试,具体包括:
判断所述HTML5页面中是否存在预定的页面元素,所述页面元素至少包括文本、控件及图片;
若是,则识别所述页面元素是否异常;
若否,则从预设的HTML5元素集中获取所述页面元素并加载至所述HTML5页面中,再次识别所加载的页面元素是否异常。
4.根据权利要求1所述的HTML5页面兼容性的测试方法,其特征在于,所述设备信息包括分辨率、主屏尺寸,所述在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试的步骤,具体包括:
发送截屏指令至各待测终端,以滑动所述HTML5页面,获取滑动幅度,累加所述滑动幅度,当累加的滑动幅度与所述主屏尺寸中的高度相等时,接收截屏指令并进行截屏得到第一屏图片;
当滑动到最后一屏时,若累加的滑动幅度小于所述主屏尺寸中的高度,则获取当前屏幕图片与最后一屏累加的滑动幅度对应的图片的差异部分,将该差异部分作为最后一屏图片;
接收拼接指令并依次将所述第一屏图片至最后一屏图片进行拼接得到所述长截屏图片;
计算所述长截屏图片与预存的标准图片的相似度以进行相似度对比测试。
5.根据权利要求1至4任一项所述的HTML5页面兼容性的测试方法,其特征在于,所述相似度对比测试步骤之后,还包括:
若所述加载测试步骤及所述相似度对比测试步骤中的测试均通过,则将所述长截屏图片与对应的待测终端的设备信息进行关联并上传至测试报告平台,以作为HTML5页面在所述设备信息对应的待测终端中显示正常的标准图片。
6.根据权利要求1至4任一项所述的HTML5页面兼容性的测试方法,其特征在于,所述HTML5页面兼容性的测试方法还包括执行微信测试步骤,所述微信测试步骤包括:
向各待测终端的微信号发送HTML5页面的链接,在各待测终端登录微信,并基于微信自带的浏览器打开所述HTML5页面的链接所在的HTML5页面后,发送微信测试指令以再次执行所述加载测试步骤及相似度对比测试步骤。
7.根据权利要求6所述的HTML5页面兼容性的测试方法,其特征在于,所述微信测试步骤,具体包括:
根据所述测试脚本中预置的微信测试账号登录微信,其中,所述微信测试账号分别与各待测终端对应的微信账号为好友关系;
通过所述微信测试账号向各待测终端对应的微信账号发送消息,所述消息为待测HTML5页面的url地址链接;
在发送所述消息成功后,通知各待测终端打开微信并使用微信自带的浏览器打开所述url地址链接,发送微信测试指令以再次执行所述加载测试步骤及相似度对比测试步骤。
8.一种测试装置,其特征在于,所述测试装置通过USB转接器连接多台待测终端,所述测试装置下载有预先配置的测试脚本,所述测试装置执行所述测试脚本时实现准备测试模块、加载测试模块及相似度对比测试模块的功能,包括:
所述准备测试模块,用于获取连接的各待测终端对应的设备信息,检测各待测终端是否安装有与所述设备信息对应的待测浏览器;若否,则发送安装指令至对应的待测终端,以获取待测浏览器的安装包并安装待测浏览器,其中,所述待测浏览器包括多个版本;
所述加载测试模块,用于发送加载测试指令至各待测终端,以打开所述待测浏览器并输入HTML5页面的链接,执行HTML5页面加载速度测试、在所述HTML5页面的链接所在的HTML5页面中依次执行HTML5页面空白测试及执行HTML5页面元素加载测试;
所述相似度对比测试模块,用于在所述加载测试步骤完成后,发送截屏指令至各待测终端,以对所述HTML5页面进行长截屏,将长截屏图片与预存的标准图片进行相似度对比测试,并在完成所述相似度对比测试后执行所述待测浏览器的其他版本的测试或者下一待测浏览器的测试。
9.一种计算机设备,所述计算机设备包括存储器及与所述存储器连接的处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的HTML5页面兼容性的测试方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的HTML5页面兼容性的测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011214544.XA CN112286821A (zh) | 2020-11-03 | 2020-11-03 | Html5页面兼容性的测试方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011214544.XA CN112286821A (zh) | 2020-11-03 | 2020-11-03 | Html5页面兼容性的测试方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112286821A true CN112286821A (zh) | 2021-01-29 |
Family
ID=74352244
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011214544.XA Pending CN112286821A (zh) | 2020-11-03 | 2020-11-03 | Html5页面兼容性的测试方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112286821A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113220587A (zh) * | 2021-06-02 | 2021-08-06 | 中国农业银行股份有限公司 | Web界面兼容性测试方法及装置 |
CN113506291A (zh) * | 2021-07-29 | 2021-10-15 | 上海幻电信息科技有限公司 | 兼容性测试方法及装置 |
-
2020
- 2020-11-03 CN CN202011214544.XA patent/CN112286821A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113220587A (zh) * | 2021-06-02 | 2021-08-06 | 中国农业银行股份有限公司 | Web界面兼容性测试方法及装置 |
CN113506291A (zh) * | 2021-07-29 | 2021-10-15 | 上海幻电信息科技有限公司 | 兼容性测试方法及装置 |
CN113506291B (zh) * | 2021-07-29 | 2024-03-26 | 上海幻电信息科技有限公司 | 兼容性测试方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109302522B (zh) | 测试方法、装置以及计算机系统和介质 | |
CN111782492A (zh) | 页面首屏加载时长测试方法、装置、计算机设备及介质 | |
CN107577622B (zh) | 后端接口模拟方法、设备及存储介质 | |
CN112286821A (zh) | Html5页面兼容性的测试方法、装置、设备及存储介质 | |
CN110704304A (zh) | 一种应用程序测试方法、装置、存储介质和服务器 | |
CN112269744A (zh) | 系统异常测试方法、装置、计算机设备和存储介质 | |
CN107798064B (zh) | 页面处理方法、电子设备及计算机可读存储介质 | |
CN113377667B (zh) | 一种基于场景的测试方法、装置、计算机设备及存储介质 | |
CN110320378B (zh) | 质控测试申请方法、装置、设备及计算机可读存储介质 | |
CN111797026A (zh) | 测试用例生成方法、装置、计算机设备及存储介质 | |
CN112597020A (zh) | 接口测试方法、装置、计算机设备及存储介质 | |
CN108804315B (zh) | 应用于动态开发的测试方法、装置、电子设备及存储介质 | |
CN114996103A (zh) | 页面异常检测方法、装置、电子设备和存储介质 | |
CN107888451B (zh) | 一种Web服务器的测试方法及装置 | |
CN112363919B (zh) | 用户界面ai自动化测试方法、装置、设备和存储介质 | |
CN111078529A (zh) | 客户端写入模块测试方法、装置、电子设备 | |
CN107797927B (zh) | 应用自动化测试方法、装置、设备及可读存储介质 | |
CN105162799A (zh) | 检验客户端是否为合法移动终端的方法以及服务器 | |
CN113535580B (zh) | 一种cts测试方法、装置及测试设备 | |
CN115934503A (zh) | 程序测试方法、装置、设备及存储介质 | |
CN105281963A (zh) | nginx服务器的漏洞检测方法和装置 | |
CN113378180A (zh) | 漏洞检测方法、装置、计算机设备及可读存储介质 | |
CN113205485A (zh) | 电梯故障自诊断图像显示方法、装置、计算机和存储介质 | |
CN110618934A (zh) | 前端自动化测试调试方法、装置及计算机可读存储介质 | |
CN107451047B (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 |