前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >canvas / webgl 测试数据稳定性专项优化优秀实践

canvas / webgl 测试数据稳定性专项优化优秀实践

原创
作者头像
腾讯移动品质中心TMQ
修改2017-10-23 09:54:21
2.2K0
修改2017-10-23 09:54:21
举报

作者:高苡新 团队:腾讯移动品质中心TMQ

背景

Canvas/webgl测试的是浏览器内核的渲染能力。通常会选取一些业界常用的测试页面作为测试用例,例如:

图1webgl测试页面截图

Canvas/webgl测试从列入TBS(腾讯浏览服务)上线前性能测试以来,就一直存在测试数据不稳定问题。初期采用购置小风扇、增加冷却时间、编写重测页面等方法解决问题,效果并不理想。时不时还是会出现测试结果发现性能落后,但开发跟进分析后发现是测试数据波动导致的误报的情况。这种情况对测试和开发同学的工作效率都造成影响。

问题定位

TBS(腾讯浏览服务英文缩写)3.3的上线前性能测试再次测得webgl落后。webglspacerocks用例落后上一版本(TBS3.2)2.59帧。但经过开发定位问题,发现依然是数据波动导致的误报。

图2webgl性能测试结果

这次,开发同学和测试同学决定刨根问底找到影响数据波动的根本原因。

通过perfMon性能监控工具,我们发现发热导致的cpu降频和cpu关闭是影响测试结果的主要原因。

图3开发定位问题邮件内容

解决办法

为此,测试组专门购置了性能优越的笔记本散热风扇来给测试手机降温。

图4笔记本散热风扇

初步验证发现效果良好(下面一段文字为邮件内容节选):

“本周blink3.0 canvas/webgl性能日常监控结果:

数据基本稳定。在增加了散热器与小风扇辅助散热之后,三部手机的测试结果均接近3、4月份结果且多多少少有所提升,无重测项。”

优化效果

日常监控历史记录可以看到优化前后的效果:

1、6个用例的波动范围都不同程度缩小。其中GUIMark3 GM3_JS_Compute的波动从9帧缩小为0.2帧。

图5优化前后数据波动范围对比

2、之前经常要重测的用例,如今不再需要重测。目前重测概率为0。

图6优化前后重测记录

注:当监控数据和上一次相差2帧或以上时需要重测。

规范“有效落后”门限值

注:达到该门限值才认为是有效落后,开发跟进分析。

6个用例当中,GUIMark3 GM3_JS_Compute的波动最大。所以我们对GUIMark3 GM3_JS_Compute进行了4次测试(每次10组测试值)验证数据波动范围:

图7优化后数据波动情况

图8优化后数据波动情况

结论:

1、单次测试10组数据的最大最小值偏差月1帧;

2、多次测试10组数据的平均值波动在0.5帧左右;

3、多次测试所有数据的最大最小值偏差1.95帧。

基于以上测试结果,制定不同用例的“有效落后”门限值如下:

图9根据数据波动验证结果制定“有效落后”门限值

搜索微信公众号:腾讯移动品质中心TMQ,获取更多测试干货!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 问题定位
  • 解决办法
  • 规范“有效落后”门限值
相关产品与服务
应用性能监控
应用性能监控(Application Performance Management,APM)是一款应用性能管理平台,基于实时多语言应用探针全量采集技术,为您提供分布式性能分析和故障自检能力。APM 协助您在复杂的业务系统里快速定位性能问题,降低 MTTR(平均故障恢复时间),实时了解并追踪应用性能,提升用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档