基于资源占用率统计的用户体验级基准测试集构建方法与流程

文档序号:16735853发布日期:2019-01-28 12:37阅读:223来源:国知局
基于资源占用率统计的用户体验级基准测试集构建方法与流程

本发明涉及桌面计算机系统性能测试领域,尤其涉及一种基于资源占用率统计的用户体验级基准测试集构建方法。



背景技术:

目前,针对国产桌面计算机系统的性能测试依然是采用benchmark工具实现,通过benchmark工具测试cpu(处理器)+os(操作系统)的峰值性能,根据测试出的cpu+os的峰值性能评判桌面计算机系统性能。然而,上述测试方法普遍存在的一个问题是,某些通过benchmark工具测试出的峰值性能较好的桌面计算机系统,在用户运行相关应用程序时体验却非常差,即通过benchmark工具并不能测试出桌面计算机系统的真正性能,无法完成用户级和用户体验级性能测试,也无法为国产计算机系统选型和优化提供可靠的依据。其中,桌面计算机系统是指提供通用计算、图形显示、文字处理、数据查询、网络访问等功能的通用计算设备。benchmark工具是speccpu的是一款商用的cpu性能测试工具。



技术实现要素:

本发明的目的在于通过一种基于资源占用率统计的用户体验级基准测试集构建方法,来解决以上背景技术部分提到的问题。

为达此目的,本发明采用以下技术方案:

一种基于资源占用率统计的用户体验级基准测试集构建方法,该方法包括:

选定若干测试项,其中,所述测试项是指用户使用的系统应用软件;

计算所述若干测试项的启动时间、运行时间和启动运行过程中资源占用率,并根据计算结果及其各自预定的对应基准值,计算出桌面计算机系统的用户体验性能分值;

根据所述用户体验性能分值评判桌面计算机系统的性能。

特别地,所述选定若干测试项,具体包括:选择用户使用频度超过设定值的系统应用软件作为测试项,并根据用户使用频度确定测试项的权重值。

特别地,所述计算所述若干测试项的启动时间、运行时间和启动运行过程中资源占用率,并根据计算结果及其各自预定的对应基准值,计算出桌面计算机系统的用户体验性能分值,具体包括:计算所述若干测试项的启动时间、运行时间和启动运行过程中资源占用率,根据公式(1)计算出桌面计算机系统的用户体验性能分值uep:

其中,n指测试项的总数,i指具体的测试项,bi指该测试项对应的基准值性能,si指该测试项在本次测试中的实际性能,wi指该测试项的权重值。

特别地,所述测试项包括但不限于压缩、解压、拷贝、浏览器、文字处理、电子表格、演示文稿、图形绘制、流媒体、重启。

特别地,所述基于资源占用率统计的用户体验级基准测试集构建方法还包括:在对每一个测试项测试过程中,记录每一个测试项运行时系统的相关性能参数。

特别地,对一款固定处理器进行测试,将各测试项的测试结果作为该测试项对应的基准值,并记录每一个测试项运行时系统的相关性能参数。

本发明提出的基于资源占用率统计的用户体验级基准测试集构建方法解决了桌面计算机系统中用户级和用户体验级性能测试问题,通过测试主流系统应用软件的性能,反映最终用户能够得到的真实系统性能,并通过记录细粒度的系统性能数据,直观的了解在系统应用软件启动时系统中的资源的调配情况,从而分析出应用系统的性能瓶颈,反映系统硬件、系统软件和系统应用软件的磨合情况,为系统调试和选型提供客观参考。

附图说明

图1为本发明实施例提供的基于资源占用率统计的用户体验级基准测试集构建方法流程图。

具体实施方式

下面结合附图和实施例对本发明作进一步说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容,除非另有定义,本文所使用的所有技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述具体的实施例,不是旨在于限制本发明。

请参照图1所示,图1为本发明实施例提供的基于资源占用率统计的用户体验级基准测试集构建方法流程图。

本实施例中基于资源占用率统计的用户体验级基准测试集构建方法具体包括如下步骤:

s101.选定若干测试项,其中,所述测试项是指用户使用的系统应用软件。

在本实施例中选择用户使用频度超过设定值的系统应用软件作为测试项,并根据用户使用频度确定测试项的权重值。用户使用频度一般是根据系统应用软件在目前市场上的使用程度而定,用户使用频度越高,权重值也就越高,例如在日常办公中经常用到的如office办公软件等其权重值较高,而系统重启的权重就相对低一些。在本实施例中所述测试项包括但不限于压缩、解压、拷贝、浏览器、文字处理、电子表格、演示文稿、图形绘制、流媒体、重启。在本实施例中应用软件在目前市场上的使用程度目前是根据互联网上的各应用下载量和组内调查讨论的结果给出大小。

s102.计算所述若干测试项的启动时间、运行时间和启动运行过程中资源占用率,并根据计算结果及其各自预定的对应基准值,计算出桌面计算机系统的用户体验性能分值。其中,测试项运行时系统的相关性能参数反映的就是系统资源占用情况即资源占用率。

在本实施例中提出了基于部件使用频度的用户体验级基准测试集构建方法,该方法中性能得分模型如下:

其中,所述部件即指测试项,n指测试项的总数,i指具体的测试项,bi指该测试项对应的基准值性能,si指该测试项在本次测试中的实际性能,wi指该测试项的权重值。其中,所述基准值性能是指在基准值机器上各应用的启动、运行时间,同时记录运行过程中的资源占用情况。所述实际性能是指被测机器的各应用的启动、运行时间,同样的,会记录运行过程中的资源占用情况。

系统利用率得分模型如下:

r=∑cpu_utilizationtbt/∑cpu_utilizationbase*100%(2)

其中,cpu_utilizationtbt指测试过程中总的cpu使用率;cpu_utilizationbase指基准值机器的cpu使用率。

在本实施例中计算所述若干测试项的启动时间、运行时间和启动运行过程中资源占用率,并根据计算结果及其各自预定的对应基准值,计算出桌面计算机系统的用户体验性能分值,具体包括:计算所述若干测试项的启动时间、运行时间和启动运行过程中资源占用率,根据上述公式(1)计算出桌面计算机系统的用户体验性能分值uep。

s103.根据所述用户体验性能分值评判桌面计算机系统的性能。

在本实施例中对一款固定处理器进行测试,将各测试项的测试结果作为该测试项对应的基准值,并记录每一个测试项运行时系统的相关性能参数。在对每一个测试项测试过程中,记录每一个测试项运行时系统的相关性能参数,来对基础软硬件日后的改进与磨合提供数据参考。其中,固定处理器的选择是根据国产芯片的短期目标确定的,目前采用的是intel奔腾4处理器。

在本实施例中每一个测试项运行时系统的相关性能参数包括但不限于:一.cpusummary:统计系统在用户态、系统态进程分别占用cpu的百分比,统计cpu等待i/o完成时间、处理软硬中断时间的百分比;统计系统每秒创建进程数、运行进程数、阻塞进程、平均负载等;二.interruptsummary:统计每个cpu中断次数;三.disksummary:统计每秒读写数据速度、读写请求次数、平均读写大小等;统计每秒写文件速度、写请求次数及写请求合并次数等;四.inodesummary:统计文件索引节点数、目录缓存入口数、文件句柄等信息;统计内存使用量、系统缓存量、硬盘数据缓存量等等;五.memorysummary:统计内存/磁盘/swap空间之间的字节置换率等信息;统计系统每秒钟产生的缺页数、页操作个数等信息;六.memoryfragmentation:统计各种内存分页信息;七.networksummary:统计每秒接收数据速度、接收包数量、接收错误速度等;统计每秒发送数据速度、发送包数量、发送错误速度等;八.socketstatistics:统计套接字分配数量、使用中的tcp、udp、raw连接数量等;其中,tcp、udp和raw是传输层的传输协议,在传输之前会先建立连接。九.tcpstacksummary:统计ippkts、tcp、udp中每秒发送接收数据包量、丢弃数据包量等。其中,不同协议的数据包格式不同,tcp、udp这些都是不同协议对应的数据包。

下面以如下七个测试项为例,对本发明进一步说明,七个测试项包括:1.开机时间(重启时间);2.压缩/解压缩文件;3.文件拷贝;4.word、excel、ppt;5.浏览器;6.图形;7.流媒体。下文中测试脚本、脚本均指采用本发明的测试工具。

一.开机时间(重启时间)

开机时间为重启时间,此测试项为所有测试的最后一项,且不记录内存、cpu占比情况,只统计时间。运行测试脚本后,脚本将会在同一目录下创建closetime文件,并将当前系统时间以时间戳的形式保存到closetime文件中,并且同时在linux系统的启动脚本中,设置开机后自动执行脚本,然后重启,重启后执行预先设置的开机自启动脚本,该脚本主要作用是:1.通过读取关机时创建的closetime文件中的值与当前时间,计算重启时间。2.对本次测试的结果分析,生成结果统计文件。3.控制系统在用户登录界面出现之前以网页的形式展示结果。

二.压缩/解压缩文件

通过python装饰器的功能来计算时间,在测试脚本中定义了名为calctime的函数装饰器,它采用python的time模块计算被其装饰的函数的运行时间。其原理是将一个函数作为参数,传入calctime函数中,在calctime函数中,首先将当前时间以时间戳的形式记录为开始时间,然后调用传入的函数,在传入的函数执行完成后,同样以时间戳的形式记录当前时间为结束时间,将结束时间和开始时间做差得到应用运行的时间,然后函数结束。这里将压缩与解压缩文件分别定义为arcfile和extfile函数,将这两个函数运行的时间作为压缩与解压缩文件所需时间。在arcfile和extfile这两个函数中将采用os.system()的方式直接运行linux命令。os.system函数为python提供的系统模块,能够直接调用系统命令,在命令执行成功时返回0,执行失败时返回相应错误码,在此我们就是依据它的返回值进行判断应用程序运行状况的。

三.文件拷贝

与压缩/解压缩文件测试相同,也是采用python装饰器的方式计算程序运行时间。这里将文件拷贝函数定义为scpfile。scpfile为自定义函数,其内部原理是,调用python系统模块,采用系统模块直接调用系统命令的方式,调用系统应用程序,在系统应用程序完成时会有返回码,根据返回码判断应用执行情况,并计算应用运行时间。

四.word、excel、ppt

测试时将对office软件(word、excel、ppt都采用相同的测试方法,在下文中统一称为office软件)启动时的内存使用率和cpu利用率进行监测,当office的内存使用保持在一个稳定的值时(office软件启动过程中,上一秒的内存使用率与下一秒的内存使用率稳定在一个范围,统计计数器加一,当计数器的值达到15时,即判定office软件的内存使用保持稳定),且cpu使用率小于3,波动幅度不超过限定值时(在office软件启动过程中,上一秒的cpu使用率与下一秒的cpu使用率的差的绝对值小于限定值时,统计计数器加一,当计数器的值达到15时,即判定office软件的cpu使用率稳定),即判定office软件已经启动完成了,并以此来计算office软件的启动时间。

五.浏览器

本项测试用于计算浏览器加载网页的时间,所有被测网页都先下载到本地,然后修改网页的主页,在主页的最后添加javascript脚本,脚本用于在网页中的所有内容都加载结束后自动关闭页面。具体实现是将调用浏览器的命令封装成一个模块,在总的测试脚本中调用模块,从调用模块时开始计时到模块运行结束后停止计时,以此来计算浏览器加载网页时间。

六.图形

测试项为unixbench2d(系统2d图形性能测试),测试方法为采用开源测试工具unixbench中的2d测试项,在运行之前先对其进行编译,然后在测试脚本中,调用系统命令运行unixbench2d测试项,最后将得到的结果作为图形的分值。图形采用分值来进行统计。

七.流媒体

本项测试为流媒体测试,测试过程中调用开源的ffmpeg工具。测试过程中主要是对视频的编解码速度进行测试。测试文件为一个mp4的视频文件,使用ffmpeg工具对该文件先进行解码操作,然后将其编码为avi格式的文件,对整个过程用时进行统计。

对于每一个测试项运行时系统的相关性能参数记录:对于应用程序(即系统应用软件)运行时的内存、cpu占比、硬盘等性能参数,是在整个脚本运行之前,先运行一个后台程序,该程序通过读取系统运行时的状态文件(/proc文件夹下的相应文件)每秒记录一下系统中的各项性能参数。在每项测试开始时,会在数据记录文件中,记录下相应的测试项名称,以此来分割数据文件,最后将会对数据文件进行分析,并会以一款固定处理器的值为基准,对各项的运行时间计算得到一个分值,并计算出一个系统同比利用效率(程序运行时系统的平均cpu利用率与基准值的比值)和单项同比利用效率(程序中的单项cpu利用率与基准值的比值),这些数据将能够为之后系统软硬件之间的磨合提供数据参考。

本发明基于内容、层次、部件使用程度、应用程序比重及权值,构建了用户体验级基准测试集。传统测试工具如benchmark侧重于测试系统的峰值性能,而本发明则侧重于系统应用的用户体验性能。

本发明的技术方案解决了桌面计算机系统中用户级和用户体验级性能测试问题,通过测试主流系统应用软件的性能,反映最终用户能够得到的真实系统性能,并通过记录细粒度的系统性能数据(细粒度的系统性能参数是指系统中各项性能参数的详细统计),直观的了解在系统应用软件启动时系统中的资源的调配情况,从而分析出应用系统的性能瓶颈,反映系统硬件、系统软件和系统应用软件的磨合情况,为系统调试和选型提供客观参考。

本领域普通技术人员可以理解实现上述实施例中的全部部分是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1