CN104679649B - 一种软件流畅度测试方法和测试装置 - Google Patents
一种软件流畅度测试方法和测试装置 Download PDFInfo
- Publication number
- CN104679649B CN104679649B CN201310632476.2A CN201310632476A CN104679649B CN 104679649 B CN104679649 B CN 104679649B CN 201310632476 A CN201310632476 A CN 201310632476A CN 104679649 B CN104679649 B CN 104679649B
- Authority
- CN
- China
- Prior art keywords
- test
- picture
- fluency
- frame per
- software
- 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
Landscapes
- Television Signal Processing For Recording (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种软件流畅度测试方法和测试装置。该流畅度测试方法包括:根据预设的帧率对测试的过程进行录屏;将录屏获得的视频按照所述预设的帧率分帧解析成图片;对相邻两张图片进行相似度的对比,得到流畅度测试结果。通过对测试的过程进行录屏;将录屏获得的视频分帧解析成图片并对比相邻图片得到流畅度测试结果,本发明提供的软件流畅度测试方法和测试装置,与通过网站测试或脚本执行相比本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
Description
技术领域
本发明涉及软件领域,尤其涉及一种软件流畅度测试方法和测试装置。
背景技术
软件测试是使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness)、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。流畅度测试是软件测试项目中针对用户直观感受的测试。
现有的流畅度测试方法主要包括以下三种:用待测产品访问测试页面或使用软件,网站或软件会给出相应的FPS(帧率)分数;测试者手动进行滑动等操作,肉眼观测被测产品的流畅度;脚本执行操作,然后用XCODE自带的Instruments工具输出FPS值。上述三种方法中,第一种方法只能测试网站或软件已设定场景下的流畅度,无法针对测试产品的特点设计特定场景去测试流畅度;第二种方法手动操作误差无法避免且肉眼观察,主观性较大,不具有说服力;第三种方法依赖于IOS开发环境,依赖工程源码,不适用竞品对比测试,需要写脚本,要求有基本的编程基础。
发明内容
本发明提出了一种软件流畅度测试方法和测试装置,其通过对测试过程录屏并分帧解析成图片,根据对比相邻图片得到流畅度测试结果。
为实现上述设计,本发明采用以下技术方案:
一方面采用一种软件流畅度测试方法,包括:
根据预设的帧率对测试的过程进行录屏;
将录屏获得的视频按照所述预设的帧率分帧解析成图片;
对相邻两张图片进行相似度的对比,得到流畅度测试结果。
另一方面采用一种软件流畅度测试装置,包括:
录屏单元,用于根据预设的帧率对测试的过程进行录屏;
解析单元,用于将录屏获得的视频按照所述预设的帧率分帧解析成图片;
评价单元,用于对相邻两张图片进行相似度的对比,得到流畅度测试结果。
本发明的有益效果在于:通过对测试的过程进行录屏;将录屏获得的视频分帧解析成图片并对比相邻图片得到流畅度测试结果。本发明提供的软件流畅度测试方法和测试装置,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。
图1是本发明实施例提供的一种软件流畅度测试方法的第一个实施例方法流程图。
图2是本发明实施例提供的一种软件流畅度测试方法的第二个实施例方法流程图。
图3是本发明实施例提供的图片相似度对比的对比关系图。
图4是本发明实施例提供的一种软件流畅度测试方法的第三个实施例方法流程图。
图5是本发明实施例提供的一种软件流畅度测试方法的第四个实施例方法流程图。
图6是本发明实施例提供的一种软件流畅度测试装置的第一个实施例结构方框图。
图7是本发明实施例提供的一种软件流畅度测试装置的第二个实施例结构方框图。
图8是本发明实施例提供的一种软件流畅度测试装置的第三个实施例结构方框图。
图9是本发明实施例提供的一种软件流畅度测试装置的第四个实施例结构方框图。
图10是本发明一个实施例提供的设备结构方框图。
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,其是本发明实施例提供的一种软件流畅度测试方法的第一个实施例的方法流程图。如图所示,该流畅度测试方法包括:
步骤101:根据预设的帧率对测试的过程进行录屏。
帧率,行业内简称FPS,用于测量显示帧数的量度,表示图形处理器处理场时每秒钟能够更新的次数。在本文中,用每秒钟屏幕图片的变化次数作为帧率值。从用户角度看,更高的帧率可以得到更流畅、更逼真的动画。这个值越大,画面越流畅,体验越好,反之,画面会有卡顿感,影响用户正常体验。一般来说30fps就是可以接受的,但是将性能提升至60fps则可以明显提升交互感和逼真感,但是一般来说超过75fps一般就不容易察觉到有明显的流畅度提升了。如果帧率超过屏幕刷新率只会浪费图形处理的能力,因为监视器不能以这么快的速度更新,这样超过刷新率的帧率就浪费掉了。本实施例中所说的预设的帧率是录屏的帧率,而不是屏幕帧率。例如,现在某软件的测试过程中,屏幕的帧率是30fps,此时录屏的帧率是60fps,相当于屏幕每秒钟更新的次数是30次,而每秒钟录屏的次数是60次;或者屏幕的帧率是80fps,录屏的帧率是40fps,相当于屏幕每秒钟更新的次数是80次,而每秒钟录屏的次数是40次。
步骤102:将录屏获得的视频按照所述预设的帧率分帧解析成图片。
录屏获得的视频实际上就是将录屏获得的多张图片连续播放,形成动态播放过程。本步骤中的操作实际就是将视频中的每一帧图片再以预设的帧率解析还原成静态的图片。例如步骤101中,录屏的帧率是60fps或40fps,那么将视频解析成图片后,每一秒的视频可以对应得到60张图片或40张图片。
步骤103:对相邻两张图片进行相似度的对比,得到流畅度测试结果。
对相邻两张图片进行相似度的对比,当这两张图片的对比结果显示相似度极高时,将这两张图片确认为一致,也就是软件运行过程中,在这两张的时间段内存在卡顿,针对图片整体的相似度的对比的结果对整个视频的流畅度进行评价,该视频的流畅度的评价也就是测试对象的流畅度的评价。
综上所述,本发明实施例对软件产品工作过程进行录屏,然后对录屏得到的视频解析出的图片进行相似度对比,根据对比结果进行流畅性评价。测试的内容不受限制,测试的产品类型没有局限本发明提供的软件流畅度测试方法,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
请参考图2,其是本发明实施例提供的软件流畅度测试方法的第二个实施例的方法流程图。本实施例与方法第一个实施例的主要区别在于,在第一个实施例的基础上进一步说明了具体的评价过程,详细阐述了其分组、相似度对比、流畅性评价的具体操作方式。
该流畅度测试方法,包括:
步骤201:根据预设的帧率对测试的过程进行录屏。
根据测试对象和测试内容以及测试的硬件配置选择合适的录屏帧率。在实际的测试过程中,软件使用是否流畅与测试对象、测试内容、硬件配置都有关系,为了使测试的结果能够体现出测试的目的,在不同的条件下,需要设置与该条件对应的录屏帧率。例如对某播放器进行测试,测试内容可以是高清视频或普通视频,不同的分辨率的视频会出现不同的播放效果;同理,不同的显卡或图形处理器对视频处理的能力也不一样,也可能会造成不同的测试结论,故针对视频的分辨率以及显卡或图形处理器,需要设置合适的录屏帧率,以得到有效的测试数据。
步骤202:将录屏获得的视频按照所述预设的帧率分帧解析成图片。
录屏后得到的视频预设的帧率分帧解析,例如录屏的帧率是60fps,整个测试的时长为10分钟,那么该视频分帧解析后得到的图片数应该是60*10*60=36000张。
步骤203:将所述图片根据预设的帧率以秒为单位进行分组。
将所述图片根据预设的帧率以秒为单位进行分组,在步骤202的例子中,录屏的帧率是60fps,也就是每秒录屏60张,在分组的过程中将60张分为一组,总共10分钟的录屏的视频,总共36000张图片合计可以分为10*60=600组。
步骤204:将每组图片内的前后相邻的两张图片依次对比,预设每组图片的初始的变化次数,当所述两张图片的相似度低于相似阈值时,该组图片内的变化次数加1,由每组图片的最后两张图片对比后得到的变化次数和初始的变化次数得到该组图片的实际帧率。
假设某次流畅度测试过程中,录屏的帧率为60fps,也就是说解析得到的图片分组后每组60张。预设每组图片的初始的变化次数,对每组图片的相邻两张图片进行对比,如第一张和第二张、第二张和第三张、……、第五十九张和第六十张,当出现两张图片对比后发现相似度低于相似阈值时,将该组图片对应的变化次数加1。具体的对比关系如图3所示,每组图片中相邻的两张图片进行对比,如PIC1和PIC2、PIC2和PIC3。每组图片的初始的变化次数可以预设为0、10或100等不同的数字,在此数字的基础上进行对比累加,将最后得到的变化次数与初始的变化的差值作为每组图片的实际帧率。总体而言,如果每组图片有N张,那么每组图片需要进行N-1次对比,与对比次数对应的,录屏帧率为Nfps得到的视频,每组图片的实际帧率最高为N-1。
步骤205:根据每组图片的实际帧率计算帧率的均值和方差,所述均值和方差作为流畅度测试结果。
均值是一种衡量集中趋势的方法,它的计算十分简单,此处不再说明。
方差是各个数据与平均数之差的平方和的平均数。方差用来度量随机变量和其数学期望(即均值)之间的偏离程度。在许多实际问题中,研究随机变量和均值之间的偏离程度有着很重要的意义。
在实际计算中,我们用以下公式计算方差。方差是各个数据与平均数之差的平方的平均数,即
其中,x表示样本的平均数,n表示样本的数量,xn表示个体,而s2就表示方差。而当用作为样本X的方差的估计时,发现其数学期望并不是X的方差,而是X方差的倍,的数学期望才是X的方差,用它作为X的方差的估计具有“无偏性”,所以我们总是用来估计X的方差,并且把它叫做“样本方差”。
方差,通俗地讲,就是和中心偏离的程度!用来衡量一批数据的波动大小(即这批数据偏离均值的大小)并把它叫做这组数据的方差。在样本容量相同的情况下,方差越大,说明数据的波动越大,越不稳定。方差和标准差是测算离散趋势最重要、最常用的指标。方差是各变量值与其均值离差平方的平均数,它是测算数值型数据离散程度的最重要的方法。标准差为方差的算术平方根,用s表示。标准差与方差不同的是,标准差和变量的计算单位相同,比方差清楚,因此很多时候我们分析的时候更多的使用的是标准差。
步骤206:根据每组图片的实际帧率生成并输出帧率的变化示意图。
根据数据生成变化示意图可以让数据的对比或变化过程呈现得更为清楚和直观,变化示意图具体可以是折线图、拟合后的光滑曲线图、条形统计图等。
综上所述,在本实施例中,进一步限定了相似度的对比过程以及流畅性的判断方法。根据每组图片获得的实际帧率,由实际帧率计算得到均值和方差,以及进一步得到标准差,由均值、方差以及标准差可以判断软件运行过程中画面的流畅度,以及流畅度的稳定性。本发明提供的软件流畅度测试方法,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
请参考图4,其是本发明实施例提供的软件流畅度测试方法的第三个实施例的方法流程图。本实施例与方法第二个实施例的主要区别在于,进一步限定了在自动化测试过程中应用该方法的操作过程,并对相关参数进行了进一步限定。
该流畅度测试方法,包括:
步骤401:录制自动化测试的脚本。
本发明中的方案可以用于针对电脑的软件进行测试,也可用于针对移动终端的软件进行测试。因为两者的操作有着明显的操作形式上的区别,两者的使用目的也有着明显的区别,但是两者同作为智能设备,虽然其测试方法有着明显的区别,但是均可通过录制自动化测试的脚本,实现自动化测试。更重要的,在使用本方案进行对比测试的时候,因为人工测试可能会存在操作顺序或动作幅度的差异,这些客观因素都有可能对对比测试的公平性产生干扰。特别是触摸操作,操作的弧度和角度都有可能产生前后不一,故录制自动化测试脚本,可以减轻测试的人工负担,同时保证测试过程中不会有其他差异因素导致测试的结果可信度降低。
步骤402:预设测试过程中录屏的帧率。
一般来讲,高的帧率可以得到更流畅、更逼真的动画。对于人眼而言,30fps就是可以接受的,但是将性能提升至60fps则可以明显提升交互感和逼真感,但是一般来说超过75fps就不容易察觉到有明显的流畅度提升了。如果帧率超过屏幕刷新率只会浪费图形处理的能力,因为监视器不能以这么快的速度更新,这样超过刷新率的帧率就浪费掉了。生活中几种常规的视频产品的刷新率分别如下:
电影:23.976fps;
电视(PAL):25fps;
电视(NTSC):29.97fps;
CRT显示器:60Hz-85Hz;
液晶显示器:60Hz-75Hz;
3D显示器:120Hz。
那么在实际的测试过程中,为了保证录屏的过程体现出测试的效果,除了设置录屏的帧率,还需要对屏幕的刷新率进行进一步设置。例如,屏幕的刷新率设置为60Hz,录屏的帧率设置为120fps,那么如果某软件产品在此状态下能够正常运行,但是在录屏后得到的视频解析成图片后,应该是会出现相似度极高的相邻图片。这种情况下,例如刚好计算出相似度超出阈值的帧的比率达到50%,从而以此判断该软件的流畅度较差,是不科学的,前面已经对常见的帧率值加以说明,提升至60fps的帧率已经具备良好的交互感和逼真感,此时对于人体视觉来说,流畅性应该相当不错的。故在设置录屏的帧率的时候,应当考虑将录屏的帧率设置为与屏幕的刷新率相同或接近。如果为了测试更加精细,或者对同一类的不同软件产品作对比测试,为了体现出最佳的对比效果,应该将屏幕的刷新率进行提升,然后将录屏的帧率进行进一步提升,以达到精确测试的目的。
步骤403:开启所述自动化测试的脚本开始测试。
将步骤401中得到的脚本开启,开始实际的测试过程。
步骤404:根据预设的帧率对测试的过程进行录屏。
步骤405:将录屏获得的视频根据所述预设的帧率做分帧处理,按时序解析成图片。
为了保证解析之后的图片分组精确,减少错误出现,将图片按照时序解析。
步骤406:将所述图片根据预设的帧率以秒为单位进行分组。
该步骤中将图片根据预设的帧率以秒为单位进行分组。也就是说如果以60fps的帧率进行录屏,分组后每组图片对应包括60张图片;但是为了增加每组图片中的样本数量,或者说测试过程中录制的视频比较长,需要减少分组数量时。可以将连续多秒视频解析后得到的图片分为一组,例如同样以60fps的帧率进行录屏,分组后每组图片对应包括120张图片、180张图片或更多张图片。同理,在进行实际帧率的计算的时候,应该对应地将变化次数除以2、3或更长的市场,当然,不以1秒作为分组单位,也不是一定以整数秒作为分组单位,只要分组方便,分组的数目合适,以其它非整数秒的时长为单位也是可以的,例如1.5秒。
步骤407:将每组图片内的前后相邻的两张图片依次对比,预设每组图片的初始的变化次数,当所述两张图片的相似度低于相似阈值时,该组图片内的变化次数加1,由每组图片的最后两张图片对比后得到的变化次数和初始的变化次数得到该组图片的实际帧率。
相似阈值设置为88%~92%,优选为90%。但是这里的88%~92%以及90%都仅仅是一个优选值,不是说所有测试都是将相似阈值以此为标准进行设置。对于测试过程某些精细操作,将相似阈值设置为88%~92%有可能对比出来两张图片的相似度是一样的,但是实际上两张图片是一个流畅变化的过程,只是变化比较小,例如鼠标的一个小移动,此时则需要将相似阈值设置为更高,98%或99%。
步骤408:根据每组图片的实际帧率计算帧率的均值和方差,所述均值和方差作为流畅度测试结果所述均值和方差作为流畅度测试结果。
步骤409:根据每组图片的实际帧率生成并输出帧率的变化示意图。
综上所述,本发明实施例进一步确定了在自动化测试过程中的实施方案,加强了对测试前序步骤的设置说明,确保测试结果的准确性,通过对软件产品工作过程进行录屏,然后对录屏得到的视频解析出的图片进行相似度对比,根据对比结果进行流畅性评价。本发明提供的软件流畅度测试方法,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
请参考图5,其是本发明实施例提供的一种软件流畅度测试方法的第四个实施例的方法流程图。本实施例与方法第三个实施例的主要区别在于,进一步说明了录制自动化测试脚本的过程,阐述了图片对比的详细步骤,限定了录屏时的帧率的设置范围。
该流畅度测试方法包括:
步骤501:根据被测试对象设计测试场景和测试工具。
对于不同的测试对象,例如播放器、浏览器或游戏,其对流畅性的要求各不相同,故测试的场景也不相同,另外对于计算机和移动终端而言,其设计的要求也各不相同。在不同的平台上,也需要选择不同的测试工具,例如在移动终端上,针对不同的系统,可以采用IOS上的自动回放工具“按键精灵”,“AutoTouch”中用到的LUA脚本。很重要的一点,因为本方案是对测试过程进行录屏,如果测试过程中出现长时间的画面静止的情况,在后期对录屏得到的视频进行分析的时候是会将其视为卡顿的,这种判断相对于实际情况是错误的,故设计录制自动化测试脚本的时候要保证测试过程中尽可能不出现或少出现画面静止的情况。
步骤502:根据测试场景和测试工具录制自动化测试的脚本。
根据上述设计好的测试场景和测试工具录制好以供自动化测试的脚本。
步骤503:预设测试过程中录屏的帧率。
录屏的帧率可以设置为40~60fps,但是该范围仅仅是因为其处于人眼能够辨别出的区域范围之内,在实际的测试过程中,为了进一步提高测试的精度,还可以选择更高的帧率。
步骤504:开启所述自动化测试的脚本开始测试。
步骤505:根据预设的帧率对测试的过程进行录屏。
步骤506:将录屏获得的视频根据所述预设的帧率做分帧处理,按时序解析成图片。
步骤507:将所述图片根据预设的帧率以秒为单位进行分组。
测试过程中得到的视频的时长可能不是整数秒,此时的分组可以考虑将最后不够整数秒的部分舍弃,对于大样本而言,不到一秒的参数是可以作忽略处理的。
步骤508:将每组图片对比,将得到的变化次数作为实际帧率。
具体的对比方法在现有技术已多有描述,本方案中可以采用一种基于灰度的计算方法,两张图片进行对比,将第一图像和第二图像分别进行灰度化处理,得到第一灰度图像和第二灰度图像,为第一灰度图像中的每一个像素点匹配一个第二灰度图像中的像素点,构造一个像素点对集合,根据得到的像素点对集合中每个像素点的灰度值计算第一图像与第二图像之间的相似度。具体的相似性计算的公式为其中S(La,Lb)为第一图像与第二图像之间的相似度,Pi和P'i分别表示第一灰度图像和第二灰度图像中的第i个像素点,Vi和V'i分别表示Pi和P'i的灰度值,n表示第一灰度图像和第二灰度图像中的像素点的个数,Vi-V`i的值等于0时,由1代替。其它亦可选用分块比较算法或抽选比较算法来进行相似度的判定。
步骤509:根据每组图片的实际帧率计算帧率的均值和方差,所述均值和方差作为流畅度测试结果。
步骤510:根据每组图片的实际帧率生成并输出帧率的变化示意图。
综上所述,本发明实施例进一步确定了在自动化测试过程中的实施方案,加强了对测试前序步骤的设置说明,说明了测试用例的选择和测试脚本录制的过程。确保测试结果的准确性,通过对软件产品工作过程进行录屏,然后对录屏得到的视频解析出的图片进行相似度对比,根据对比结果进行流畅性评价。本发明提供的软件流畅度测试方法,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
以下为本发明实施例提供的流畅度测试装置的实施例。流畅度测试装置的实施例与上述的流畅度测试方法实施例属于同一构思,流畅度测试装置的实施例中未详尽描述的细节内容,可以参考上述流畅度测试方法实施例。
请参考图6,其是本发明实施例提供的软件流畅度测试装置的第一个实施例的结构方框图。该流畅度测试装置,包括如下内容:
录屏单元610,用于根据预设的帧率对测试的过程进行录屏;
解析单元620,用于将录屏获得的视频按照所述预设的帧率分帧解析成图片;
评价单元630,用于对相邻两张图片进行相似度的对比,根据对比结果评价流畅度。
综上,上述单元的协同工作,通过对软件产品工作过程进行录屏,然后对录屏得到的视频解析出的图片进行相似度对比,根据对比结果进行流畅性评价。测试的内容不受限制,测试的产品类型没有局限,本发明提供的软件流畅度测试装置,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
请参考图7,其是本发明实施例提供的软件流畅度测试装置的第二个实施例的结构方框图。本实施例与流畅度测试装置的第一个实施例的主要区别在于,进一步说明了评价单元630对图片进行分组,然后对每组图片进行对比,得到每组图片的实际帧率,根据帧率对流畅度做出评价,并给出了具体的评价过程。该流畅度测试装置,包括如下内容:
录屏单元610,用于根据预设的帧率对测试的过程进行录屏。
解析单元620,用于将录屏获得的视频按照所述预设的帧率分帧解析成图片。
评价单元630,用于对相邻两张图片进行相似度的对比,得到流畅度测试结果。
其中评价单元630包括分组模块631、对比模块632、评价模块633和示意图生成模块634。
分组模块631,用于将所述图片根据预设的帧率以秒为单位进行分组;
对比模块632,用于将每组图片内的前后相邻的两张图片依次对比,预设每组图片的初始的变化次数,当所述两张图片的相似度低于相似阈值时,该组图片内的变化次数加1,由每组图片的最后两张图片对比后得到的变化次数和初始的变化次数得到该组图片的实际帧率;
评价模块633,用于根据每组图片的实际帧率评价流畅度。
更具体地,所述评价模块633,用于根据每组图片的实际帧率计算帧率的均值和方差,所述均值和方差作为流畅度测试结果。
示意图生成模块634,用于根据每组图片的实际帧率生成并输出帧率的变化示意图。
综上所述,本发明实施例评价单元630通过对图片进行分组,将每组图片中前后相邻的两张图片进行对比进而得到变化次数以及实际帧率,根据实际帧率进行流畅度评价,具体的评价参数包括均值、方差以及变化示意图。通过对软件产品工作过程进行录屏,然后对录屏得到的视频解析出的图片进行相似度对比,根据对比结果进行流畅性评价。测试的内容不受限制,测试的产品类型没有局限,本发明提供的软件流畅度测试装置,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
请参考图8,其是本发明实施例提供的软件流畅度测试装置的第三个实施例的结构方框图。本实施例与流畅度测试装置第二个实施例的主要区别在于,进一步限定了在自动化测试过程中应用该方法的操作过程,并对相关参数进行了进一步限定。该流畅度测试装置,包括如下内容:
脚本录制单元640,用于录制自动化测试的脚本。
帧率预设单元650,用于预设测试过程中录屏的帧率。
测试开启单元660,用于开启所述自动化测试的脚本开始测试。
录屏单元610,用于根据预设的帧率对测试的过程进行录屏。
解析单元620,用于将录屏获得的视频根据所述预设的帧率做分帧处理,按时序解析成图片。
评价单元630,用于对相邻两张图片进行相似度的对比,得到流畅度测试结果。
其中评价单元630包括分组模块631、对比模块632、评价模块633和示意图生成模块634,
分组模块631,用于将所述图片根据预设的帧率以秒为单位进行分组。
对比模块632,用于将每组图片内的前后相邻的两张图片依次对比,预设每组图片的初始的变化次数,当所述两张图片的相似度低于相似阈值时,该组图片内的变化次数加1,由每组图片的最后两张图片对比后得到的变化次数和初始的变化次数得到该组图片的实际帧率。
相似阈值设置为90%~98%,优选为95%。但是这里的90%~98%以及95%都仅仅是一个优选,不是说所有测试都是将相似阈值以此为标准进行设置。对于测试过程某些精细操作,将相似阈值设置为90%~98%有可能对比出来两张图片的相似度是一样的,但是实际上两张图片是一个流畅变化的过程,只是变化比较小,例如鼠标的一个小移动,此时则需要将相似阈值设置为更高,98.5%或99%,而对于某些操作来说,可能需要设置为更小的范围值,例如播放器的测试中,可能会设置为88%或其它数值。
评价模块633,用于根据每组图片的实际帧率计算帧率的均值和方差,所述均值和方差作为流畅度测试结果。
示意图生成模块634,用于根据每组图片的实际帧率生成并输出帧率的变化示意图。
综上所述,本发明实施例进一步确定了在自动化测试过程中的实施方案,加强了对测试前序步骤的设置说明,确保测试结果的准确性,通过对软件产品工作过程进行录屏,然后对录屏得到的视频解析出的图片进行相似度对比,根据对比结果进行流畅性评价。测试的内容不受限制,测试的产品类型没有局限,本发明提供的软件流畅度测试装置,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
请参考图9,其是本发明实施例提供的一种软件流畅度测试装置的第四个实施例的结构方框图。本实施例与流畅度测试装置第三个实施例的主要区别在于,进一步说明了录制自动化测试脚本的过程,阐述了图片对比的详细步骤,限定了录屏时的帧率的设置范围。
脚本录制单元640,用于录制自动化测试的脚本。
帧率预设单元650,用于预设测试过程中录屏的帧率。
录屏的帧率可以设置为40~60fps,但是该范围仅仅是因为其处于人眼能够辨别出的区域范围之内,在实际的测试过程中,为了进一步提高测试的精度,还可以选择更高的帧率。
测试开启单元660,用于开启所述自动化测试的脚本开始测试。
录屏单元610,用于根据预设的帧率对测试的过程进行录屏。
解析单元620,用于将录屏获得的视频根据所述预设的帧率做分帧处理,按时序解析成图片。
评价单元630,用于对相邻两张图片进行相似度的对比,得到流畅度测试结果。
其中,评价单元630包括分组模块631、对比模块632、评价模块633和示意图生成模块634,
分组模块631,用于将所述图片根据预设的帧率以秒为单位进行分组。
对比模块632,用于将每组图片内的前后相邻的两张图片依次对比,预设每组图片的初始的变化次数,当所述两张图片的相似度低于相似阈值时,该组图片内的变化次数加1,由每组图片的最后两张图片对比后得到的变化次数和初始的变化次数得到该组图片的实际帧率。
评价模块633,用于根据每组图片的实际帧率计算帧率的均值和方差,所述均值和方差作为流畅度测试结果。
示意图生成模块634,用于根据每组图片的实际帧率生成并输出帧率的变化示意图。
其中,脚本录制单元640包括场景工具设计模块641和脚本录制模块642。
场景工具设计模块641,用于根据被测试对象设计测试场景和测试工具;
脚本录制模块642,用于根据测试场景和测试工具录制自动化测试的脚本。
综上所述,本发明实施例进一步确定了在自动化测试过程中的实施方案,加强了对测试前序步骤的设置说明,说明了测试用例的选择和测试脚本录制的过程。确保测试结果的准确性,通过对软件产品工作过程进行录屏,然后对录屏得到的视频解析出的图片进行相似度对比,根据对比结果进行流畅性评价。测试的内容不受限制,测试的产品类型没有局限,本发明提供的流畅度测试装置,与通过网站测试或脚本执行相比,本发明的测试更为方便;与人工观察相比,本发明的测试的结果更加公正。
请参考图10,其是本发明一个实施例提供的设备结构方框图,该设备可以用于实施上述实施例中提出的流畅度测试方法。具体来讲:
该设备可以包括处理器110、存储器120、输入单元130、显示单元140等部件。本领域技术人员可以理解,图10中的设备并不构成绝对的限定,例如电源作为常识性的必要部件未予说明。可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。该设备可以是计算机、平板电脑、智能手机等智能设备。其中:
处理器110是设备的控制中心,利用各种接口和线路连接整个设备的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行设备的各种功能和处理数据,从而完成软件流畅度测试。可选的,处理器110可包括一个或多个处理核心。
存储器120可用于存储软件程序以及模块,处理器110通过运行存储在存储器120的软件程序和/或模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的软件;存储数据区可存储根据设备的使用所创建的数据(比如录屏获得的视频、视屏解析后得到的图片等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器110和输入单元130对存储器120的访问。
输入单元130可用于接收输入的数字或字符信息,以及与测试的预设或测试过程相关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,对于移动终端(比如平板电脑、智能手机),输入单元130可包括触摸显示屏或者触控板。
显示单元140可用于显示测试过程中输入的信息或提供给用户的信息以及设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置。进一步的,输入单元130如果是触敏元件则可覆盖显示单元,当触敏元件检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示单元上提供相应的视觉输出。更具体的,本发明中的录屏过程也就是对显示单元140的显示内容进行录制的过程。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括存储器、磁盘或光盘等。
以上内容仅为本发明的较佳实施例,对于本领域的普通技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,本说明书内容不应理解为对本发明的限制。
Claims (16)
1.一种软件流畅度测试方法,其特征在于,包括:
根据预设的帧率对测试的过程进行录屏;
将录屏获得的视频按照所述预设的帧率分帧解析成图片;
对相邻两张图片进行相似度的对比,得到流畅度测试结果;
其中,所述对相邻两张图片进行相似度的对比,得到流畅度测试结果,包括:
将所述图片根据预设的帧率以秒为单位进行分组;
将每组图片内的前后相邻的两张图片依次对比,预设每组图片的初始的变化次数,当所述两张图片的相似度低于相似阈值时,该组图片内的变化次数加1,将每组图片的最后两张图片对比后得到的变化次数和初始的变化次数的差值作为该组图片的实际帧率;
根据每组图片的实际帧率得到流畅度测试结果。
2.根据权利要求1所述的一种软件流畅度测试方法,其特征在于,所述根据每组图片的实际帧率得到流畅度测试结果,具体为:
根据每组图片的实际帧率计算帧率的均值和方差,所述均值和方差作为流畅度测试结果。
3.根据权利要求1所述的一种软件流畅度测试方法,其特征在于,所述根据每组图片的实际帧率得到流畅度测试结果之后,还包括:
根据每组图片的实际帧率生成并输出帧率的变化示意图。
4.根据权利要求1所述的一种软件流畅度测试方法,其特征在于,所述相似阈值为90%~98%。
5.根据权利要求4所述的一种软件流畅度测试方法,其特征在于,所述相似阈值为95%。
6.根据权利要求1所述的一种软件流畅度测试方法,其特征在于,所述根据预设的帧率对测试的过程进行录屏之前,还包括:
录制自动化测试的脚本;
预设测试过程中录屏的帧率;
开启所述自动化测试的脚本开始测试。
7.根据权利要求6所述的一种软件流畅度测试方法,其特征在于,所述录制自动化测试的脚本,包括:
根据被测试对象设计测试场景和测试工具;
根据测试场景和测试工具录制自动化测试的脚本。
8.根据权利要求1所述的一种软件流畅度测试方法,其特征在于,所述预设的帧率为40~60fps。
9.一种软件流畅度测试装置,其特征在于,包括:
录屏单元,用于根据预设的帧率对测试的过程进行录屏;
解析单元,用于将录屏获得的视频按照所述预设的帧率分帧解析成图片;
评价单元,用于对相邻两张图片进行相似度的对比,得到流畅度测试结果;
其中,所述评价单元,包括:
分组模块,用于将所述图片根据预设的帧率以秒为单位进行分组;
对比模块,用于将每组图片内的前后相邻的两张图片依次对比,预设每组图片的初始的变化次数,当所述两张图片的相似度低于相似阈值时,该组图片内的变化次数加1,将每组图片的最后两张图片对比后得到的变化次数和初始的变化次数的差值作为该组图片的实际帧率;
评价模块,用于根据每组图片的实际帧率得到流畅度测试结果。
10.根据权利要求9所述的一种软件流畅度测试装置,其特征在于,所述评价模块,具体用于:
根据每组图片的实际帧率计算帧率的均值和方差,所述均值和方差作为流畅度测试结果。
11.根据权利要求9所述的一种软件流畅度测试装置,其特征在于,所述评价单元,还包括:
示意图生成模块,用于根据每组图片的实际帧率生成并输出帧率的变化示意图。
12.根据权利要求9所述的一种软件流畅度测试装置,其特征在于,所述相似阈值为90%~98%。
13.根据权利要求12所述的一种软件流畅度测试装置,其特征在于,所述相似阈值为95%。
14.根据权利要求9所述的一种软件流畅度测试装置,其特征在于,还包括:
脚本录制单元,用于录制自动化测试的脚本;
帧率预设单元,用于预设测试过程中录屏的帧率;
测试开启单元,用于开启所述自动化测试的脚本开始测试。
15.根据权利要求14所述的一种软件流畅度测试装置,其特征在于,所述脚本录制单元,包括:
场景工具设计模块,用于根据被测试对象设计测试场景和测试工具;
脚本录制模块,用于根据测试场景和测试工具录制自动化测试的脚本。
16.根据权利要求9所述的一种软件流畅度测试装置,其特征在于,所述预设的帧率为40~60fps。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310632476.2A CN104679649B (zh) | 2013-11-29 | 2013-11-29 | 一种软件流畅度测试方法和测试装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310632476.2A CN104679649B (zh) | 2013-11-29 | 2013-11-29 | 一种软件流畅度测试方法和测试装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104679649A CN104679649A (zh) | 2015-06-03 |
CN104679649B true CN104679649B (zh) | 2018-02-27 |
Family
ID=53314731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310632476.2A Active CN104679649B (zh) | 2013-11-29 | 2013-11-29 | 一种软件流畅度测试方法和测试装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104679649B (zh) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104869203B (zh) * | 2015-06-18 | 2017-09-22 | 广东欧珀移动通信有限公司 | 卡顿的测试方法、装置及测试设备 |
CN106341436B (zh) * | 2015-07-08 | 2021-03-19 | 深圳市腾讯计算机系统有限公司 | 加速效果的检测方法及装置 |
CN104967903A (zh) * | 2015-07-28 | 2015-10-07 | 无锡天脉聚源传媒科技有限公司 | 一种视频播放的检测方法及装置 |
CN106686371B (zh) * | 2015-11-11 | 2019-04-02 | 广州市动景计算机科技有限公司 | 一种帧率测试方法、装置、设备及系统 |
CN105761255B (zh) * | 2016-02-04 | 2019-01-25 | 网易(杭州)网络有限公司 | 游戏画面卡顿测试方法及装置 |
CN105913088A (zh) * | 2016-04-13 | 2016-08-31 | 厦门美图移动科技有限公司 | 一种卡顿识别方法、装置及计算设备 |
CN106168922A (zh) * | 2016-06-30 | 2016-11-30 | 百度在线网络技术(北京)有限公司 | 一种终端界面显示的测试方法和装置 |
CN106101823A (zh) * | 2016-07-08 | 2016-11-09 | 深圳天珑无线科技有限公司 | 一种视频显示数据的处理方法及显示装置 |
CN106791812A (zh) * | 2016-12-16 | 2017-05-31 | 上海高顿教育培训有限公司 | 一种视频的帧率检测方法 |
CN106598865B (zh) * | 2016-12-22 | 2021-05-07 | 动视云(北京)科技有限公司 | 一种软件测试方法及装置 |
US10860461B2 (en) | 2017-01-24 | 2020-12-08 | Transform Sr Brands Llc | Performance utilities for mobile applications |
CN107193515B (zh) * | 2017-04-10 | 2023-03-14 | 腾讯科技(深圳)有限公司 | 动画显示流畅度的监控方法、装置及其设备 |
US10235192B2 (en) * | 2017-06-23 | 2019-03-19 | Accenture Global Solutions Limited | Self-learning robotic process automation |
CN107547888B (zh) * | 2017-08-17 | 2021-10-29 | 深圳市乐视环球科技有限公司 | 一种自动判断影片播放是否结束的装备及方法 |
CN107396193B (zh) * | 2017-08-30 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 视频播放的方法和装置 |
CN107817433A (zh) * | 2017-10-27 | 2018-03-20 | 东信和平科技股份有限公司 | 智能卡的测试系统、方法、设备及计算机可读存储介质 |
CN108228477B (zh) * | 2017-12-29 | 2021-05-07 | 北京奇虎科技有限公司 | 一种基于存储容量来获取运行数据的方法及系统 |
CN108427630B (zh) * | 2018-03-15 | 2021-06-11 | 腾讯科技(深圳)有限公司 | 性能信息获取方法、装置、终端及计算机可读存储介质 |
CN108600668B (zh) * | 2018-03-27 | 2020-09-29 | 维沃移动通信有限公司 | 一种录屏帧率调整方法及移动终端 |
CN110798738B (zh) * | 2018-08-01 | 2022-01-28 | Oppo广东移动通信有限公司 | 帧率控制方法、装置、终端及存储介质 |
CN109144858B (zh) * | 2018-08-02 | 2022-02-25 | 腾讯科技(北京)有限公司 | 流畅度检测方法、装置、计算设备及存储介质 |
CN110908887B (zh) * | 2018-09-14 | 2023-09-12 | 飞狐信息技术(天津)有限公司 | 一种自动化测试应用程序响应速度的方法及系统 |
CN111240984A (zh) * | 2020-01-15 | 2020-06-05 | 中国平安财产保险股份有限公司 | 异常页面识别方法、装置、计算机设备和存储介质 |
CN111290960B (zh) * | 2020-02-24 | 2021-08-10 | 腾讯科技(深圳)有限公司 | 应用程序的流畅度检测方法、装置、终端及存储介质 |
CN113419929B (zh) * | 2020-03-17 | 2022-11-11 | 华为技术有限公司 | 测试动画效果流畅性的方法及设备 |
CN114064442A (zh) * | 2020-07-27 | 2022-02-18 | 福建天泉教育科技有限公司 | 一种Android软件操作响应的测试方法及其系统 |
CN112073597A (zh) * | 2020-08-14 | 2020-12-11 | 北京三快在线科技有限公司 | 视觉稳定度检测方法、装置、设备以及存储介质 |
CN112612688A (zh) * | 2020-12-29 | 2021-04-06 | 北京安兔兔科技有限公司 | 设备流畅度的测试方法、装置、电子设备及存储介质 |
CN112905449B (zh) * | 2021-01-27 | 2024-04-23 | 长沙市到家悠享网络科技有限公司 | 目标测试方法、装置、设备和存储介质 |
CN113382233A (zh) * | 2021-06-10 | 2021-09-10 | 展讯通信(上海)有限公司 | 检测终端视频录制异常的方法、系统、介质及终端 |
CN114173194B (zh) * | 2021-12-08 | 2024-04-12 | 广州品唯软件有限公司 | 页面流畅度的检测方法、装置、服务器和存储介质 |
CN117255179B (zh) * | 2023-11-14 | 2024-02-02 | 北京灵赋生物科技有限公司 | 基于图像标签识别导向的轨迹监测系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413357A (zh) * | 2010-09-24 | 2012-04-11 | 富泰华工业(深圳)有限公司 | 测试装置及其测试方法 |
CN102902625A (zh) * | 2012-11-14 | 2013-01-30 | 北京奇虎科技有限公司 | 软件性能测试系统和方法 |
CN103136102A (zh) * | 2013-02-07 | 2013-06-05 | 百度在线网络技术(北京)有限公司 | 一种Android平台的流畅度测试方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2509332B1 (en) * | 2011-04-04 | 2015-12-30 | AGUSTAWESTLAND S.p.A. | Automatic test system for digital display systems |
-
2013
- 2013-11-29 CN CN201310632476.2A patent/CN104679649B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413357A (zh) * | 2010-09-24 | 2012-04-11 | 富泰华工业(深圳)有限公司 | 测试装置及其测试方法 |
CN102902625A (zh) * | 2012-11-14 | 2013-01-30 | 北京奇虎科技有限公司 | 软件性能测试系统和方法 |
CN103136102A (zh) * | 2013-02-07 | 2013-06-05 | 百度在线网络技术(北京)有限公司 | 一种Android平台的流畅度测试方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104679649A (zh) | 2015-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104679649B (zh) | 一种软件流畅度测试方法和测试装置 | |
AU2013201418B2 (en) | Aircrew training system | |
Roth et al. | Location matters, especially for non-salient features–An eye-tracking study on the effects of web object placement on different types of websites | |
Navalpakkam et al. | Mouse tracking: measuring and predicting users' experience of web-based content | |
CN103136102A (zh) | 一种Android平台的流畅度测试方法和装置 | |
US20190200008A1 (en) | Method and device for testing screen fluency of terminal, and terminal device | |
CN104503877B (zh) | 一种对智能终端进行评测的方法和装置 | |
Ma et al. | Presence, workload and performance effects of synthetic environment design factors | |
CN105635848A (zh) | 一种弹幕显示方法及终端 | |
CN107071556A (zh) | 一种界面渲染方法和装置 | |
Fisher | A multiattribute attentional drift diffusion model | |
CN105869199A (zh) | 用于处理动画的装置和方法 | |
CN103869936B (zh) | 信息的显示方法及电子设备 | |
CN103946887A (zh) | 注视位置估计系统、注视位置估计系统的控制方法、注视位置估计装置、注视位置估计装置的控制方法、程序以及信息存储介质 | |
Westermeier et al. | Exploring plausibility and presence in mixed reality experiences | |
Qianchen et al. | How much can we differentiate at a brief glance: Revealing the truer limit in conscious contents through the Massive Report Paradigm (MRP) | |
Khacharem et al. | Developing tactical skills through the use of static and dynamic soccer visualizations: An expert–nonexpert differences investigation | |
DE102008042200A1 (de) | Manipulation der umgebungssynchronisierten Schnittstelle | |
CN114780188B (zh) | 网页3d模型顶牌展示方法、系统、终端及存储介质 | |
Gao et al. | Objectively quantifying subjective phenomena: Measuring the flashed face distortion effect | |
Müller et al. | A structured approach for conducting a series of controlled experiments in software visualization | |
CN107422847A (zh) | 一种远程测试虚拟角色加速度值的方法及系统 | |
US10203833B2 (en) | Recommending application modifications using image area counts | |
Jin et al. | Study on reaction time depending on display parameters of gaming displays | |
JP4763661B2 (ja) | 画質評価方法、プログラム及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |