CN110209539B - 一种测试方法、终端设备以及测试器 - Google Patents
一种测试方法、终端设备以及测试器 Download PDFInfo
- Publication number
- CN110209539B CN110209539B CN201810168016.1A CN201810168016A CN110209539B CN 110209539 B CN110209539 B CN 110209539B CN 201810168016 A CN201810168016 A CN 201810168016A CN 110209539 B CN110209539 B CN 110209539B
- Authority
- CN
- China
- Prior art keywords
- data
- browser
- instruction
- player
- terminal equipment
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种测试方法,包括:首先终端设备通过浏览器接收数据收集指令和脚本指令,脚本指令用于指示终端设备进行数据获取操作;接着终端设备根据数据收集指令和脚本指令从终端设备内部浏览器的渲染模块获取浏览器数据,浏览器数据用于反映JS和CSS动画;终端设备还可从终端设备内部播放器的渲染模块获取播放器数据,播放器数据用于反映标准视频,浏览器数据和播放器数据都至少包含每一帧画面的时间信息;终端设备将浏览器数据和播放器数据发送至测试器。本申请通过从终端设备内部同时获取浏览器数据和播放器数据,并将收集到的数据发送给测试器进行分析可得到实时帧率,通过上述方式能准确检测页面帧率并且能实现检测帧率的自动化全过程。
Description
技术领域
本申请涉及通信领域,尤其涉及一种测试方法、终端设备以及测试器。
背景技术
随着智能终端设备的普及化,人们越来越多的日常活动依赖终端设备进行,终端设备画面显示的流畅度直接影响用户的视觉体验,而页面的渲染帧率是显示流畅度的直观体现,帧率是用于表示画面显示帧数的度量,单位为帧数或赫兹,帧数用于描述每秒播放多少帧画面,而赫兹则表示显示屏的画面每秒更新多少次。
应用程序可分为客户端程序和浏览器程序,客户端程序一般可独立运行,浏览器程序需要借助浏览器来运行,可以通过访问浏览器来访问应用程序,即在服务器上对数据进行处理,就处理的结果生成网页。我们要想获取Web应用程序的页面帧率可以采用录屏的方式,在动画过程中录屏生成视频文件,然后按照期望的帧率例如60帧将视频文件的每一秒解析出60幅连续画面,然后再根据特定的图像对比算法,对比相邻两张图片的相似度,如果小于一定的阈值则将帧率数加1,表明相似度不够的情况下应该增加画面帧数,使得相邻的两幅画面更加贴近,在人眼看来更加流畅。如果相邻两张图片的相似度大于一定阈值则无需增加帧率数。通过这个对比过程完成1秒时间内的所有连续图片,最后得出帧率。
在确定帧率数时,图像对比的方式和算法多种多样,算法的精确度和阈值的选取直接影响帧率的准确性,阈值通常是通过经验值确定,在不同场景下阈值的取值也不相同,例如在某些精细操作中,阈值需要设定到98%~99%,非精细操作场景阈值可降低为 88%~92%。以上这些都是经验值,在不同的场景下很难保证选取的算法和阈值是当前场景下最合适的模式,因此算法和阈值的不确定性导致帧率信息的可靠性降低。
发明内容
本申请提供了一种测试方法、终端设备和测试器,通过从终端设备内部同时获取浏览器数据和播放器数据这些完整信息可精确计算出页面的渲染帧率并且还能自动化地完成页面帧率检测流程。
本申请实施例的第一方面提供一种测试方法,包括:
首先,终端设备在和测试器通过WebSocket服务建立通信连接之后,接收测试器发送的数据收集指令和脚本指令,该脚本指令是由测试器通过解析测试脚本得到的,脚本指令可指示终端设备模拟某些操作以获取所需的数据。
接着终端设备根据数据收集指令和脚本指令从终端设备内部浏览器的渲染模块中获取浏览器数据,浏览器引擎渲染生成的是JS和CSS动画,该浏览器数据记录的是关于JS和CSS动画中每帧画面的开始时间和结束时间,由此可以精确地获取每一帧画面的具体消耗时间,并且终端设备还会同步记录中央处理器(CPU,central processing unit)、图形测试器(GPU,Graphics Processing Unit)的使用情况以及内存占用、温度数据等辅助信息。
还可从终端设备内部播放器的渲染模块中获取播放器数据,播放器数据反映的是标准视频,同样,播放器数据也包含每一帧画面的时间信息和辅助信息。
最后,终端设备将收集到的浏览器数据和播放器数据发送给测试器。
终端设备通过从浏览器和播放器中的渲染模块收集浏览器数据和播放器数据,从而得知脚本语言(JS,JavaScript)和层叠样式表单(CSS,cascading style sheets)动画的每一帧画面的时间信息,继而能够准确计算得知画面的渲染帧率。从浏览器内部同时收集浏览器数据和播放器数据,得到的数据全面而准确,并且计算帧率时不依赖于图像对比算法和阈值的确定,因此以该数据得到的画面渲染帧率也较为准确。
结合本申请实施例的第一方面,在本申请实施例的第一方面的第一种实现方式中,
在终端设备接收测试器发送的数据收集指令和脚本指令之前,终端设备和测试器须先通过WebSocket服务建立通信连接,终端设备开启监听模式,以便及时接受测试器发送的数据收集指令和脚本指令。WebSocket协议是基于传输控制协议(TCP,transmissioncontrol protocol)的一种网络协议,可实现浏览器与服务器全双工通信。
终端设备等待测试器的接入,测试器作为客户端,主动跟终端设备浏览器内部的WebSocket服务端建立连接,通过可靠性高的WebSocket服务发送数据收集指令和脚本指令,方案的可靠性也大大增加。
结合本申请实施例的第一方面,在本申请实施例的第一方面的第二种实现方式中,由浏览器引擎渲染出来的是脚本语言(JS,JavaScript)动画和层叠样式表(CSS,cascading style sheets)动画,由播放器渲染模块渲染出来的是标准视频,因此上述所指的浏览器数据和播放器数据中记录的是了JS动画、CSS动画和标准视频中每一帧画面的开始时间和结束时间,还包括了这一段时间内终端设备的CPU、GPU、内存占用情况以及温度数据等信息。
通过上述方式,本申请实施例可从终端设备内部同时获取JS、CSS和标准视频中每一帧画面的开始和结束时间,即每一帧画面的消耗时间,准确真实的开始和结束时间保证了帧率的准确性,并且还可以与终端设备的属性信息如CPU、GPU、内存占用情况以及温度数据等进行配合分析,极大地丰富完善了数据,提高了数据的说服力,增加了数据的应用场景。
本申请实施例的第二方面提供一种测试方法,包括:首先,所述测试器向终端设备发送数据收集指令和脚本指令,所述脚本指令由测试器通过解析脚本得到,所述脚本指令用于指示终端设备进行数据获取操作;
接着,所述测试器接收终端设备发来的浏览器数据和播放器数据,所述浏览器数据和播放器数据为所述终端设备根据所述数据收集指令和脚本指令收集的数据,所述浏览器数据和播放器数据都至少包含每一帧画面的时间信息;
最后,所述测试器根据所述浏览器数据和所述播放器数据分析出画面帧率。
本申请实施例中,测试器发送数据收集指令、脚本指令和结束指令可控制终端设备进行数据收集,自动化地完成页面帧率检测的过程,体现了方案的灵活性与便捷性。测试器将终端设备收集来的浏览器数据和播放器数据进行解析计算,可识别出实时帧率、丢帧情况、还可制作出往期数据对比,再通过对内核数据的配合分析,可制作成对应的图表,多方面地体现了播放器数据和浏览器数据的作用。
本申请实施例的第三方面提供一种终端设备,包括:
接收模块,用于通过浏览器接收数据收集指令和脚本指令,所述脚本指令由测试器通过解析脚本得到,所述脚本指令用于指示终端设备进行数据获取操作;
第一获取模块,用于根据所述数据收集指令和脚本指令从所述终端设备内部浏览器的渲染模块获取浏览器数据,所述浏览器数据用于反映脚本语言JS和层叠样式表单动画CSS;
第二获取模块,用于根据所述数据收集指令和脚本指令从所述终端设备内部播放器的渲染模块获取播放器数据,所述播放器用于反映视频标签,所述浏览器数据和播放器数据都至少包含每一帧画面的时间信息;
发送模块,用于发送所述浏览器数据和所述播放器数据至所述测试器。
结合本申请实施例的第三方面,在本申请实施例的第一方面的第一种实现方式中,包括:
监听模块,用于所述接收模块之前开启WebSocket服务进行监听,所述监听用于及时接收所述测试器发送的所述数据收集指令和脚本指令。
本申请实施例的第四方面提供一种测试器,包括:
发送模块,用于向终端设备发送数据收集指令和脚本指令,所述脚本指令由测试器通过解析脚本得到,所述脚本指令用于指示终端设备进行数据获取操作;
接收模块,用于接收终端设备发来的浏览器数据和播放器数据,所述浏览器数据和播放器数据为所述终端设备根据所述数据收集指令和脚本指令收集的数据,所述浏览器数据和播放器数据都至少包含每一帧画面的时间信息;
分析模块,用于根据所述浏览器数据和所述播放器数据分析出画面帧率。
本申请第五方面提供一种计算机程序产品,当其在计算机上运行时,使得计算机可以执行上述任一方面的方法。
本申请第六方面提供一种计算机存储介质,用于储存为上述方法所用的计算机软件指令,当其在计算机上运行时,使得计算机可以执行上述中任一方面的方法
从以上技术方案可以看出,本申请具有以下优点:
本申请实施例提供了一种测试方法,终端设备通过从浏览器和播放器中的渲染模块收集浏览器数据和播放器数据,从而得知脚本语言(JS,JavaScript)动画和层叠样式表(CSS,cascading style sheets)动画的每一帧画面的时间信息,继而能够准确计算得知画面的渲染帧率,这种方式得到的浏览器数据和播放器数据全面且准确,并且计算帧率时不依赖于图像对比算法和阈值的确定,因此以该数据为基础得到的画面渲染帧率也较为准确。
附图说明
图1为本申请实施例中测试器和终端设备的硬件结构图;
图2为本申请实施例中测试器和终端设备的交互实施例示意图;
图3为本申请实施例中测试器分析出的实时帧率变化图;
图4为本申请实施例中测试器分析出的帧率-浏览器版本变化图;
图5为本申请实施例中终端设备的实施例示意图;
图6为本申请实施例中终端设备的又一实施例示意图;
图7为本申请实施例中测试器的实施例示意图。
具体实施方式
本申请提供了一种测试方法,包括:首先,终端设备通过浏览器接收数据收集指令和脚本指令,所述脚本指令由测试器通过解析脚本得到,所述脚本指令用于指示终端设备进行数据获取操作;再,所述终端设备根据所述数据收集指令和脚本指令从所述终端设备内部浏览器的渲染模块获取浏览器数据,所述浏览器数据用于反映JS动画和CSS动画;然后,所述终端设备根据所述数据收集指令和脚本指令从所述终端设备内部播放器的渲染模块获取播放器数据,所述播放器用于反映视频标签,所述浏览器数据和播放器数据都至少包含每一帧画面的时间信息。本申请实施例可从终端设备内部的浏览器引擎和底层播放器分别收集到JS、CSS和标准视频的帧画面数据,从而确定帧率信息。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请主要应用的场景如图1所示,包括测试器和终端设备,本申请在终端设备的浏览器和测试器上均做了软件上的改进。测试器可用于发送数据收集指令、脚本指令和结束指令等控制指令,还可接收其他设备发送的数据并进行分析运算,并且还可以在测试器的显示器上将结果直观显示出来。测试器可由个人计算机(PC,personal computer)来实现,也可由其他具有处理能力的设备担任。本实施例中测试器以PC主机为例来进行说明,包含显示器、主板、网卡。网卡可通过WebSocket服务与终端设备等其他设备建立通信连接,用于发送具体的操作指令如数据收集指令、结束指令等,WebSocket服务还可用于终端设备中的浏览器与服务器进行全双工通信,在浏览器与服务器进行简单握手之后便能即时快速传输数据,这种简单握手的传输方式使得传输数据的效率提高。
终端设备可以是数字机顶盒,还可以是电脑或手机。终端设备包含显示器(也可外接显示设备)、单板、网卡。显示器用来显示界面的渲染结果,单板中的中央处理器(CPU,Central Processing Unit)负责浏览器或其他应用程序的运行,网卡用于接收操作指令和发送数据。
具体地,下面介绍本申请实施例测试方法的一个实施例,如图2所示,图2为页面帧率检测过程中终端设备与测试器之间的交互示意图。
101、测试器与终端设备之间建立通信连接;
本申请实施例中终端设备与服务器之间可通过WebSocket协议建立通信连接,建立连接之后,服务器可根据终端设备内浏览器的要求返回浏览器所需的页面和资源文件。终端设备的应用程序,以浏览器方式运行的Web应用为例,在WebSocket服务下可开启监听模式,等待测试器的接入,测试器主动跟浏览器内部的WebSocket服务建立连接,并通过建立的连接发送数据收集指令和脚本指令到浏览器,通知浏览器开始收集数据。
102、测试器发送数据收集指令和脚本指令至终端设备的浏览器;
终端设备受到数据收集指令的触发便开始不间断地收集浏览器中的内部数据,具体包括浏览器的数据和底层播放器的数据,记录每帧画面的时间信息,例如每帧画面的开始时间和结束时间,还会同步记录这段时间下的CPU、GPU使用情况、内存占用情况与温度数据等辅助信息。
脚本指令是测试器通过解析测试脚本得到的指令,每个测试脚本对应不同的测试场景,其中记录了需要模拟的用户操作,如暂停、快进、页面跳转和触发动画等操作,测试器将脚本对应的指令通过WebSocket服务发送给终端设备中的浏览器,浏览器即可按照收到的脚本指令模拟特定场景下的动作并收集数据,例如当浏览器收到的指令对应的操作是跳转页面的操作时,则在浏览器的页面进行跳转时,开始记录每一帧画面的时间信息,包括开始时间和结束时间。
103、终端设备根据数据收集指令和脚本指令收集浏览器内部的浏览器数据和播放器数据;
浏览器页面的所有帧可以分为两类,一类是JS动画、CSS动画和标准视频,JS动画是利用JavaScript创建的动态图像,原理是利用两个不同的事件来驱动两个相应的函数,以此来切换两张对应的图片以创造出动画效果,然后由浏览器引擎渲染生成画面,还有一类是标准视频形式,由底层播放器渲染生成,可通过第三方软件插入的方式显示于浏览器页面的窗口当中。浏览器渲染的动画和播放器的视频是分别在两个不同的图层上绘制而成,两个图层叠加在一起构成显示画面。
当终端设备接收到数据收集指令时,便开始根据脚本指令收集浏览器数据和播放器数据,这些数据包括时间信息,还可以包括记录的时间段内CPU、GPU内存的占用情况和温度数据等情况,脚本指令对应的操作包括暂停、快进、页面跳转和触发动画等操作,当脚本指令对应的操作是页面跳转时,是指在某个页面跳转时终端自动记录下具体的时间信息。
104、当终端设备接收到测试器发来的结束指令时,将收集到的浏览器数据和播放器数据发送至测试器中;
浏览器收到测试器的停止指令后,结束信息收集,并将收集到的时间渲染信息与CPU、 GPU、内存等辅助信息打包,通过WebSocket发送给测试器。
105、测试器根据浏览器数据和播放器数据得出帧率信息;
测试器根据画面的时间渲染信息如每一帧画面的开始时间和结束时间得到每一帧画面的消耗时间,然后计算出一秒钟可呈现出多少张连续的画面,即帧率,并且测试器还可根据这些数据分析丢帧的情况,再配合分析内核数据,可制作成直观的图表表现出来。
具体地,例如针对某个动画测试场景,设计的渲染帧率为60Hz,然后测试器根据浏览器反馈的实际渲染数据,分析出其实际帧率变化如图3所示,如图3所示,横坐标表示测试时间,纵坐标表示该时间的渲染帧率。我们可以看到有三次帧率急剧减少的情况出现也就是说出现了丢帧现象,即在某段时间内呈现的画面数量急速下降,表现出来的就是画面播放不够流畅,动画卡顿。
同时,测试器还会获取历史测量数据,绘制出不同版本就同一测试用例的平均渲染帧率的变化情况,这些能直接体现出版本性能的升降。如图4所示,如图4所示,横坐标表示浏览器的版本号,纵坐标表示不同版本下的平均帧率情况。可以直观看出,在版本2经历过画面流畅度的低谷后,研发人员经过调整与修复之后,画面显示的质量持续上升。
本申请实施例中,终端设备可根据测试器的数据收集指令的触发收集数据,并在测试器解析出的脚本指令的指示下自动从浏览器内部收集准确且全面的数据,然后将这些数据发送给测试器进一步得出帧率信息,通过这些自动化的一体测量分析流程和装置可实现精确控制和人力解放,大大提高测试效率。并且终端设备是同时获取浏览器渲染的JS和CSS 动画信息以及底层播放器渲染的标准视频信息,收集的信息更加全面,有利于发现和准确定位问题。从浏览器内部可直接获取每一帧画面准确的开始时间和结束时间等时间信息, 无需借助图像对比算法和依靠经验值确定的阈值计算帧率,不受图像的性能、压缩格式、图像对比算法的限制,这种直接从终端内部获取数据的方式计算出来的帧率更加准确。
下面对本申请中的终端设备进行详细描述,请参阅图5,本申请实施例中的终端设备包括:
接收模块201,用于通过浏览器接收数据收集指令和脚本指令,所述脚本指令由测试器通过解析脚本得到,所述脚本指令用于指示终端设备进行数据获取操作;
第一获取模块202,用于根据所述数据收集指令和脚本指令从所述终端设备内部浏览器的渲染模块获取浏览器数据,所述浏览器数据用于反映脚本语言JS动画 和层叠样式表 CSS动画;
第二获取模块203,用于根据所述数据收集指令和脚本指令从所述终端设备内部播放器的渲染模块获取播放器数据,所述播放器用于反映视频标签,所述浏览器数据和播放器数据都至少包含每一帧画面的时间信息;
发送模块204,用于发送所述浏览器数据和所述播放器数据至所述测试器。
本申请实施例中,终端设备通过从浏览器和播放器中的渲染模块收集浏览器数据和播放器数据,从而得知脚本语言(JS,JavaScript)和层叠样式表单(CSS,cascadingstyle sheets)动画的每一帧画面的时间信息,继而能够准确计算得知画面的渲染帧率,这种从解析内部软件的方式得到的浏览器数据和播放器数据全面且准确,因此以该数据为基础得到的画面渲染帧率也较为准确。
基于上述图5对应的实施例,请参阅图6,本发明实施例中的终端设备20还包括:
监听模块205,用于所述接收模块201之前开启WebSocket服务进行监听,所述监听用于及时接收所述测试器发送的所述数据收集指令和脚本指令。
终端设备通过监听模块205可通过WebSocket服务及时接收测试器发送的所述数据收集指令和脚本指令,可靠性高的WebSocket服务保证了本方案的可靠性。
下面对本申请中的测试器进行详细描述,请参阅图7,本申请实施例中的测试器包括:
发送模块301,用于向终端设备发送数据收集指令和脚本指令,所述脚本指令由测试器通过解析脚本得到,所述脚本指令用于指示终端设备进行数据获取操作;
接收模块302,用于接收终端设备发来的浏览器数据和播放器数据,所述浏览器数据和播放器数据为所述终端设备根据所述数据收集指令和脚本指令收集的数据,所述浏览器数据和播放器数据都至少包含每一帧画面的时间信息;
分析模块303,用于根据所述浏览器数据和所述播放器数据分析出画面帧率。
测试器可通过发送模块301发送数据收集指令、脚本指令和结束指令等可控制终端设备进行自动化操作,完成页面帧率检测,体现了方案的灵活性与便捷性。测试器将终端设备收集来的浏览器数据和播放器数据通过分析模块303进行解析计算,可识别出实时帧率、丢帧情况、制作出往期数据对比,再通过内核数据的配合分析,制作成对应的图表并显示,多方面地体现了播放器数据和浏览器数据的作用。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD)) 等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (7)
1.一种测试方法,其特征在于,所述方法包括:
终端设备通过浏览器接收数据收集指令和脚本指令,所述脚本指令由测试器通过解析脚本得到,所述脚本指令用于指示终端设备进行数据获取操作;
所述终端设备根据所述数据收集指令和所述脚本指令从所述终端设备内部浏览器的渲染模块中获取浏览器数据,所述浏览器数据用于反映脚本语言JS动画和层叠样式表单CSS动画;
所述终端设备根据所述数据收集指令和所述脚本指令从所述终端设备内部播放器的渲染模块中获取播放器数据,所述播放器用于反映标准视频,所述浏览器数据和播放器数据都至少包含每一帧画面的时间信息;
所述终端设备将所述浏览器数据和所述播放器数据发送至所述测试器,以使得所述测试器根据所述浏览器数据和所述播放器数据得出画面帧率。
2.根据权利要求1所述的方法,其特征在于,所述终端设备通过浏览器接收数据收集指令和脚本指令之前,所述方法还包括:
所述终端设备开启WebSocket服务进行监听,所述监听用于及时接收所述测试器发送的所述数据收集指令和脚本指令。
3.根据权利要求1所述的方法,其特征在于,所述浏览器数据和播放器数据包括:
所述每一帧画面的时间信息和/或所述终端设备的属性信息,所述属性信息为获取所述浏览器数据和所述播放器数据时终端设备的属性信息。
4.一种终端设备,其特征在于,所述终端设备包括:
接收模块,用于通过浏览器接收数据收集指令和脚本指令,所述脚本指令由测试器通过解析脚本得到,所述脚本指令用于指示终端设备进行数据获取操作;
第一获取模块,用于根据所述数据收集指令和脚本指令从所述终端设备内部浏览器的渲染模块获取浏览器数据,所述浏览器数据用于反映脚本语言JS动画和层叠样式表单CSS动画;
第二获取模块,用于根据所述数据收集指令和脚本指令从所述终端设备内部播放器的渲染模块获取播放器数据,所述播放器用于反映标准视频,所述浏览器数据和播放器数据都至少包含每一帧画面的时间信息;
发送模块,用于发送所述浏览器数据和所述播放器数据至所述测试器,以使得所述测试器根据所述浏览器数据和所述播放器数据得出画面帧率。
5.根据权利要求4所述的终端设备,其特征在于,所述终端设备还包括:
监听模块,用于所述接收模块之前开启WebSocket服务进行监听,所述监听用于及时接收所述测试器发送的所述数据收集指令和脚本指令。
6.一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至3中任意一项所述的方法。
7.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求1至3中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810168016.1A CN110209539B (zh) | 2018-02-28 | 2018-02-28 | 一种测试方法、终端设备以及测试器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810168016.1A CN110209539B (zh) | 2018-02-28 | 2018-02-28 | 一种测试方法、终端设备以及测试器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110209539A CN110209539A (zh) | 2019-09-06 |
CN110209539B true CN110209539B (zh) | 2021-10-01 |
Family
ID=67778879
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810168016.1A Active CN110209539B (zh) | 2018-02-28 | 2018-02-28 | 一种测试方法、终端设备以及测试器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110209539B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112363919B (zh) * | 2020-11-02 | 2024-02-13 | 北京云测信息技术有限公司 | 用户界面ai自动化测试方法、装置、设备和存储介质 |
CN113194306B (zh) * | 2021-04-27 | 2022-07-08 | 广州虎牙科技有限公司 | 帧率波动评估方法、装置、移动终端、系统和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103179166A (zh) * | 2011-12-23 | 2013-06-26 | 腾讯科技(深圳)有限公司 | 在客户端中提供服务的方法和客户端 |
CN103699483A (zh) * | 2013-12-20 | 2014-04-02 | 合一网络技术(北京)有限公司 | 一种flash播放器的播放状态与浏览器兼容测试方法及其装置 |
US9274935B1 (en) * | 2013-01-15 | 2016-03-01 | Google Inc. | Application testing system with application programming interface |
CN106254961A (zh) * | 2016-07-27 | 2016-12-21 | 青岛海信电器股份有限公司 | 电视中的视频播放方法及电视 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8086902B2 (en) * | 2007-04-16 | 2011-12-27 | Microsoft Corporation | Method and apparatus for testing media player software applications |
-
2018
- 2018-02-28 CN CN201810168016.1A patent/CN110209539B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103179166A (zh) * | 2011-12-23 | 2013-06-26 | 腾讯科技(深圳)有限公司 | 在客户端中提供服务的方法和客户端 |
US9274935B1 (en) * | 2013-01-15 | 2016-03-01 | Google Inc. | Application testing system with application programming interface |
CN103699483A (zh) * | 2013-12-20 | 2014-04-02 | 合一网络技术(北京)有限公司 | 一种flash播放器的播放状态与浏览器兼容测试方法及其装置 |
CN106254961A (zh) * | 2016-07-27 | 2016-12-21 | 青岛海信电器股份有限公司 | 电视中的视频播放方法及电视 |
Also Published As
Publication number | Publication date |
---|---|
CN110209539A (zh) | 2019-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105653456B (zh) | 应用程序性能测试方法、装置和系统 | |
CN109803180B (zh) | 视频预览图生成方法、装置、计算机设备及存储介质 | |
CN108721898B (zh) | 帧率的确定方法和装置、存储介质、电子装置 | |
US10657036B2 (en) | Determining visual testing coverages | |
CN109271600B (zh) | 一种性能数据的监测方法、系统和装置 | |
CN108235004B (zh) | 视频播放性能测试方法、装置和系统 | |
CN108737885A (zh) | 一种分析在线视频播放卡顿的方法及装置 | |
CN108475381A (zh) | 用于媒体内容的表现的直接预测的方法和设备 | |
CN110209539B (zh) | 一种测试方法、终端设备以及测试器 | |
CN113194349A (zh) | 视频播放方法、评论方法、装置、设备及存储介质 | |
CN109271929B (zh) | 检测方法和装置 | |
EP2731015B1 (en) | Computer infrastructure performance system | |
CN110782376A (zh) | 一种考试防作弊方法、装置、电子装置和存储介质 | |
CN105844107B (zh) | 数据处理方法和装置 | |
CN112131346A (zh) | 评论聚合方法、装置、存储介质和电子设备 | |
CN115396705A (zh) | 投屏操作验证方法、平台及系统 | |
CN113824987B (zh) | 直播间首帧耗时的确定方法、介质、装置和计算设备 | |
CN113905249B (zh) | 推流异常检测方法及装置 | |
US9584859B2 (en) | Testing effectiveness of TV commercials to account for second screen distractions | |
CN110806909A (zh) | 一种应用程序页面掉帧信息确定方法、装置及电子设备 | |
CN111866403B (zh) | 一种视频图形内容处理方法、装置、设备及介质 | |
EP3861424A1 (en) | Collecting of points of interest on web-pages by eye-tracking | |
CN110569184B (zh) | 一种测试方法及终端设备 | |
CN110764676B (zh) | 一种信息资源显示方法、装置、电子设备以及存储介质 | |
US10203833B2 (en) | Recommending application modifications using image area counts |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |