自从经朋友介绍PerfDog这款移动端测试神器后就一直在使用它测试大型游戏的流程度,前两天使用腾讯视频追剧分享到微信时发现发现的链接直接进入腾讯视频的小程序中,试了多个视频软件皆是如此,于是想要试试用PerfDog测试一下各家视频小程序实际使用的性能到底如何。
本次测试使用的手机是小米8,处理器为骁龙845,GPU为Adreno 630,测试的是三款最主流的视频小程序,分别是腾讯视频、优酷、爱奇艺,用以对比会加入腾讯视频的APP版本作为参考。
测试前发现三个小程序和一个应用主界面都只有四个分栏,腾讯视频中间的“VIP会员”暂且忽略不计。于是打算将这四个测试项每个分栏各测试30s,视频播放3分钟。
和测试游戏一样,先将测试机连接上PC,点击左下角的“ ”勾选上需要测试的参数,这里我勾选了ScreenShot、Frame Time、CPU Usage、CPU Usage(Normalized)、Memory Usage、CPU Temperature、Network。选择微信应用,点击左上角的蓝色三角符号开始记录测试数据。
双击测试曲线可以在对应时间上打上标注,为了快速输入,我分别在载入小程序、第一分栏、第二分栏、第三分栏、第四分栏和开始播放视频的开始时间标记了“0”、“1”、“2”、“3”、“4”、“5”。
下面是记录的四个测试用例FPS与Jank数据截图。
腾讯视频小程序:
优酷小程序:
爱奇艺小程序:
腾讯视频APP:
初步来看,腾讯视频小程序和APP的PFS较低,Jank比较多。PFS大家都知道是帧率,一般帧率越高,1秒内游戏画面或者应用界面真实平均刷新次数也越多,屏幕视觉效果就越流畅。但是如果1秒内如果刷新很多,但是刷新的都是没有变化的同一个画面,那么看起来还是会有卡顿的感觉。PFS高不一定一定流畅,但PFS低那就肯定卡顿了。Jank指1s内卡顿次数,Jank的引入就能更加直观地展示出卡顿情况了。
借助PerfDog新推出的多维度对比功能,我们来看看四个用例的比较。
对比功能的使用很简单,只需要在要对比的测试项目后面的操作栏将测试项目加入对比,然后点击选项栏的对比按钮,开始对比即可。
FPS对比:
这里需要注意的是腾讯视频小程序、优酷小程序、爱奇艺小程序和腾讯视频APP对应的用例名称前缀分别是“TX”“YK”、“AQ”、“app”。
如果觉得时间段太长,参数曲线太密集,可以拖动曲线下方的蓝色横条来缩短时间段,定位到要分析的场景中进行细致分析。在后面3分钟的视频播放环节中,我有不断拖动进度条来模拟用户跳过不感兴趣的场景。在此有一个小插曲需要提一下,使用腾讯视频APP拖动视频的时候出现了视频过程中广告的情况,广告播放完,我让数据记录多记录了一些正常播放的内容,才出现了上图APP比其他三个小程序多出1分钟测试时间的情况。
Jank对比:
无论从PerfDog帮助我们统计出来的平均FPS和Jank数据还是从参数曲线图自行分析,我们都可以看到,优酷的小程序相对更加流畅卡顿少,腾讯的小程序和应用卡顿会多一些,帧率会低一点。最出乎意料的是,上图紫色线腾讯视频APP最后一分钟是真正播放的视频内容,显示的平均帧率为21帧左右,Jank为384.4/10min,而最后一帧前面那一分钟左右是广告,平均帧率为37帧左右,Jank为0/10min。“小朋友,你是不是有很多问号...”当然,APP端的视频清晰度会比小程序里的视频和广告内容清晰度要高出很多,视频码率肯定也高出很多,这些对帧率卡顿也会有很大的影响。
除了小程序外,PerfDog还可以测试现在比较流行的小游戏。小程序和小游戏除了流量问题外,使用起来的跟手度,卡顿感也是影响普及很重要的原因,因此性能测试也就成了小程序和小游戏测试的重点。小程序和小游戏的性能和WEB的性能测试非常类似,性能的常用指标也大致相同。包括页面的白屏时间,首屏时间,资源占用,页面渲染时间,帧率等等。我这里只是简单的测试了视频类小程序,小游戏也可以测试。也期待PerfDog后续更新自动收集白屏、黑屏时间、页面渲染数据等更多信息,期待测试神器越来越好用。
软件下载地址:https://perfdog.qq.com/