# 小游戏云测试更新说明(2020-12-04)
# 一、新特性
# 1. JavaScript CPU Profile能力
在云测试的指定设备测试类型下,支持JavaScript CPU Profile的能力。
开发者可以使用GameGlobal.startCpuProfile()
和GameGlobal.stopCpuProfile()
来开始和结束CPU Profile。
在指定设备测试类型下,CPU Profile时间最长为3分钟。如果开始Profile后,3分钟内未结束,平台侧将自动结束,并输出CPU Profile文件。
注意:开启Profile可能导致测试过程中的内存占用增加,且有小概率导致小游戏异常退出。
开始JavaScript CPU Profile的示例代码如下:
// 开始 JavaScript CPU Profile
if ( typeof GameGlobal !== "undefined" && typeof GameGlobal.startCpuProfile !== "undefined" ) {
GameGlobal.startCpuProfile()
console.log("开始JavaScript CPU Profile!")
}
结束JavaScript CPU Profile的示例代码如下:
// 结束 JavaScript CPU Profile
if ( typeof GameGlobal !== "undefined" && typeof GameGlobal.stopCpuProfile !== "undefined" ) {
GameGlobal.stopCpuProfile()
console.log("结束JavaScript CPU Profile!")
}
备注:
GameGlobal.startCpuProfile()
和GameGlobal.stopCpuProfile()
仅在云测试环境下生效,不影响体验版或者现网环境下的游戏表现。
测试完成后,开发者可以在"测试报告-详细报告-运行性能"下查看对CPU Profile文件的解析,也可以下载CPU Profile文件, 导入Chrome或者微信开发者工具中查看。
导入微信开发者工具的步骤是:在调试器窗口下,选中JavaScript Profiler,点击"Load", 选择下载后的CPU Profile文件即可。
备注: 传统情况下,针对iOS系统进行JavaScript CPU Profile,往往需要在Safari浏览器中查看。考虑到兼容性,我们对iOS系统下的Profile文件 根据Chrome Devtools Protocol的Profiler协议进行了转化,因此,即使是针对iOS系统下微信小游戏的CPU Profile文件,依旧可以通过Chrome或者微信开发者工具查看。
# 二、后续优化内容
# 2.1 测试评分下启动性能计算更规范
目前测试评分下的启动性能仅根据总启动耗时来进行打分,会受到云设备网络影响,且只根据评分无法判断到底启动的哪个阶段存在性能问题。 因此,后续我们将优化测试评分下的启动性能评分,提供更丰富的子指标。
# 2.2 提升标准测试覆盖率
标准测试基于monkey的操作策略,许多开发者反馈标准测试难以覆盖复杂的游戏场景,我们将逐步提升测试覆盖率