# 小程序质量检测

小程序质量检测将云测服务的 启动性能智能化Monkey 能力结合起来,为接入的小程序做一个全面的质量检测。

质检报告示例 可以看出,质检主要对小程序从以下四个方面进行检查:

  • 启动性能
  • 运行性能
  • 兼容性
  • 网络性能

# 快速开始质检任务

用户可以在左侧导航栏的“自动化任务管理”=>“小程序质检”,进入质检任务页面。点击页面右上角的“新建质检任务”按钮,创建质检任务。

特别提醒:
质检任务中每选一个平台或一个机型,都会用2台相同机型的机器,分别跑测 智能化Monkey启动性能任务。
所以选择每个平台或机型,需跑测20分钟智能化Monkey和20分钟的启动性能测试,总共需扣除40分钟 测试时长

# 执行失败排查指南

上面提到,质检任务用相同机型启动了智能化Monkey 任务和 启动性能 任务,质检报告也依赖这两个任务的测试结果。

如果任务执行失败,一般是真机原因,用户在测试报告页面中会有更详细的提示可供参考。

特别提醒:
启动性能的评估是参考We分析同小程序,同机型冷启动的结果作为参考对象。
如小程序线上访问人数较少,未找到同机型的对比值时,无法获取评估结果(报告展示为N/A)

# 质检报告评分细则

# 总览

云测会将各方面的评估结果进行整合,得到小程序质检评估结果。其中各项权重占比:

  • 启动性能:30%
  • 运行性能:30%
  • 兼容性:20%
  • 网络性能:20%

# 启动性能

冷启动热启动 两种小程序启动场景,分析启动流程中,代码包下载,代码注入和首次渲染这三个阶段的耗时,以及整体启动耗时。

进一步的,云测将这三个阶段数据以及整体耗时数据,和We分析小程序线上版大盘数据进行对比,方便开发者对比

特别注意:为了和We分析评估保持一致,最终的总体测试结果,是以小程序冷启动的结果进行评估

# 运行性能

运行性能分析主要包括 页面切换耗时运行体验评分 两部分

# 1、页面切换耗时

以页面开始跳转为开始时间, 安卓以4s内最后一个LCP,iOS以FCP/FR为结束时间。注意这里和We分析的页面切换耗时定义不同,理论上比We分析的数值会大一些。

页面切换耗时可直观反应小程序运行“卡顿”情况,建议切换耗时控制在2500ms以内

报告中详细展示了页面切换耗时的均值、切换慢的页面和次数、以及切换耗时的明细数据

为了方便开发者排查页面耗时切换慢的原因,在页面详情中,特别整合了页面相关的所有信息,包括是否页面截图、异常表现(如JSError,黑白屏)、网络请求和体验评分的情况

# 2、运行体验评分

运行体验评分内容主要利用 运行时性能分析中的体验评分能力,在小程序运行过程中实时检查,分析出一些可能导致体验不好的地方,并且定位出哪里有问题,以及给出一些优化建议

运行体验从性能检查、最佳实践和建议三个反面,对小程序的运行情况进行评估

  • 【重要】性能检查:从WXML节点数目、setData使用、脚本执行耗时等方面进行检查。性能检查将直接影响运行体验的评估结果
  • 【轻微】最佳实践:从HTTPS请求、css使用、废弃接口等方面进行检查。最佳实践对运行体验的评估结果有轻微影响。
  • 【推荐】建议:从图片显示,元素点击区域等方面进行检查。注意建议项只提供参考,不纳入运行体验评分的评估结果中

# 兼容性

小程序在任何机器上运行时,都应避免出现JSError或黑白屏、文字重叠等UI异常情况。

兼容性就是从这些维度帮助开发者分析在运行Monkey过程中是否出现了JSError和UI异常问题

  • JSError:在运行过程中,检测页面是否存在JSError
  • UI异常:对运行过程中的截图进行检查,发现 黑白屏黑白屏等UI异常情况

# 网络性能

小程序的网络性能对用户体验影响较大,如网络返回报错,可能会导致小程序页面显示异常。

网络请求拥塞时,也会让小程序页面变得卡顿,带来不好的用户体验

质检报告重点从 请求结果请求耗时 这两个维度评估小程序网络性能

# 请求结果分析

请求结果分析主要从请求失败和请求次数两个方面进行检查:

  • 请求失败:检查网络请求是否存在请求失败的情况,对于失败的请求,开发者应予以重视,因为这很可能会导致小程序功能异常
  • 请求次数:分析每个页面发送请求的次数。针对发送请求较多页面,开发者可以考虑合并部分请求,或者对请求内容进行缓存,以提升页面性能

# 请求耗时分析

请求耗时分析主要检查请求耗时过长的情况,建议所有网络请求都在 1秒内 返回结果

此外,云测给出了所有请求记录的详细信息

# 需要帮助