小游戏云测试更新说明(2020-01-06)
小游戏云测试更新说明(2020-01-06)
邀请各位开发者报名内测小游戏云测试服务
https://developers.weixin.qq.com/community/minigame/doc/000846255205f8c92d5912fca5e401
一、新特性
1.1 启动加载专项
在内测期间, 我们了解到许多开发者对微信小游戏启动加载流程非常关注,为了快速测试在不同设备上启动加载的兼容性问题以及启动速度,我们为此增加了启动专项数据。该功能有以下特点:
各机型启动数据汇总,全面掌握启动数据
剥离框架和开发者数据,细分启动阶段
自动化黑屏检测分析,输出启动失败告警
[图片]
启动概览
所有设备根据不同档位启动时间汇总,包含代码包加载、代码注入、等小游戏开发者相关的时间。
[图片]
启动时间分布与设备详情
[图片]
检测出现启动加载黑屏的设备, 这里的黑屏检测手段是启动内2分钟内黑屏截图数大于等于10张则会输出启动失败告警。
设备启动详情
[图片]
所有设备的启动时间详细列表,开发者可以根据数据分析不同设备的性能差异
1.2 测试覆盖概览
在内测期间,我们调研发现目前的设备列表使用较为不方便,开发者很难知道到底覆盖了哪些场景,有哪些设备出现了故障?
需要每台设备点击详情才能看到,为此我们对测试过程的所有采样图像进行聚类。开发者可以快速知道覆盖了哪些场景,当点击这些场景的“代表图片”后也能直接看到哪些设备跑了这些场景。
[图片]
1.3 SourceMap
在云测试的兼容性报告中我们提供了JS Error,但是之前的报告内容无法对应上源码文件和行号,这对于问题分析极为困难,因此本期优化中我们结合SourceMap进行解析,开发者可以直接定位到源文件位置。如下图,在开发者工具提交sourcemap后,开发者在设备的JS Error中能定位到源文件和行号( loading.js:20)。此功能的前提是需要开发者使用引擎工具生成SourceMap并在开发者工具上传https://developers.weixin.qq.com/miniprogram/dev/framework/usability/debug.html
[图片]
二、问题修复
2.1 游戏流畅度判定(低帧、掉帧)规则修改
更新前:检测到任何一次帧率过低或者抖动幅度过大则会报告:性能帧率异常
更新后:由于检测规则过于简单粗暴,导致大量设备由于偶然的帧率抖动呈现性能异常。调整为:1min时间窗口内,帧率低于10帧的次数或者抖动幅度超过10帧的次数大于10
2.2 网络性能中关于压缩规则判定
更新前: 任何类型的网络请求回包检测是否有gzip等压缩控制字段
更新后: 由于有许多文件类型本身就有压缩,因此仅对文本类型(js/json/plist/proto/txt/csv/xml)检测,且当文件大小>1K时才进行此项规则的检测。
2.3 清缓存(getStorageSync)
更新前:不清理文件缓存(50M缓存)
更新后:由于没有清理文件缓存,因此导致测试任务之间结果不稳定,设备是否有文件缓存内容是未知的(第二次同一台设备测试可能会有前一次文件缓存), 因此测试任务调整为每次清理文件缓存。
三、后续优化内容
3.1 内存分析专题,细化内存使用数据
在内测期间,我们接触到不少开发者对内存问题非常关注,希望优化小游戏此项数据,因此接下来我们将对内存进行专题分析,提供更好的手段帮助开发者定位问题。
3.2 云测试评分体系与行业标准
针对开发者对于云测试的表现是否满足同品类游戏的标准不清楚,对好的实践方式希望得到指引,我们会针对测试数据进行评分,并给予响应的优化指引。
3.3 提升标准测试覆盖率
内测期间,标准测试基于monkey的操作策略,许多开发者反馈标准测试难以覆盖复杂的游戏场景,我们下一期优化将提升测试覆盖率问题。