小程序测试点|与APP测试的区别

1、什么是小程序

小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用,也体现了“用完即走”的理念,用户不用关心是否安装太多应用的问题,应用将无处不在,随时可用,但又无需安装。它有几个显著的特点:

  • 可以取代低频app,不占用空间
  • 适用功能单一的(小程序最大2M)
  • 适合配合线下店铺一起使用,扫描即可获取信息
  • 不适用流量和分发的产品(小程序不支持流量)

2、进入小程序的常用方式:

  • 长按小程序的二维码识别进入
  • 发现tab页小程序的列表
  • 朋友分享转发
  • 公众号文章推送
  • 附近的小程序
  • 用户扫描二维码
  • 搜索
  • 微信Tab下拉
  • 别的小程序植入

3、小程序的基本功能

普通app拥有的功能,小程序基本上都有,主要看是否开发了,而且小程序和微信的交互更加便捷。

小测序自带功能:关闭小程序、发送给朋友、添加到我的小程序、设置、反馈与投诉、重新进入小程序、成长守护防沉迷

4、小程序的架构

小程序主要分为两个主要的部分:view模块和service模块。view模块负责UI展示,它由wxml和wxss转换后的代码以及微信提供的辅助模块组成。

一个view模块对应一个webview组件,小程序支持多个view存在,当我们对 view 层进行事件操作后,会通过 WeixinJSBridge 将数据传递到 Native 系统层。

Native 系统层决定是否要用 native 处理,然后丢给 逻辑层进行用户的逻辑代码处理。

逻辑层处理完毕后会将数据通过 WeixinJSBridge 返给 View 层,View 渲染更新视图。

3、小程序的测试点

权限测试

  • 未授权微信登录小程序

        未授权时,一般使用一些业务功能的时候都会弹出提醒:先授权再操作相应功能,或者在提交数据到后台的时候,会提示补充相关信息才能提交成功。 

  • 已授权微信登录小程序

        授权微信访问小程序,意味着自己的微信账号可被小程序管理方所获取,自动以微信的身份行驶业务操作权限,比如咨询、支付、数据查询等。

  • 同一微信号在不同手机端登录授权查看数据权限

         同一微信号在不同手机微信端授权登录同一小程序后,所能查看的数据和操作的权限都应该是同步一致的。

功能测试(同普通功能测试)

  • 按功能模块测试:根据主要业务模块
  • 按业务流程测试:根据实际业务流
  • 按数据流向测试:验证输入数据和输出数据是否一致、数据存储到数据库是否与界面填写的一致等
  • 入口测试:同一功能入口有效性的检查
  • 交互性测试:界面友好提示、网络错误提示、数据异常提示等是否简介明了
  • ……

UI测试

  • 产品是否符合设计图
  • 设计是否符合高保真要求
  • 按钮尺寸颜色是否合理
  • 横竖屏切换操作
  • ……

兼容性测试

小程序的兼容性比传统的app兼容性测试考虑方面会多一点,最好从机型、操作系统、分辨率、微信版本、数据这几个方面去考虑小程序的兼容性。

  • 操作系统兼容性:

因为Android和iOS系统上小程序的js脚本执行的环境不同,所以存在操作系统兼容性。

官方文档中说明,在开发工具上,小程序的js代码时运行在nwjs中,在iOS上是运行在JavaScriptCore中,在Android上是通过X5JSCore来解析的。正因为脚本执行的环境不同,因此在开发工具上正常的小程序有可能在Android和iOS系统上不符合预期。

  • 机型、分辨率和系统版本:

小程序部分api依赖于系统底层实现,以及javascript标准库与系统版本强关联,所以尤其是安卓设备在兼容性方面有其要注意。

  • 微信兼容性:

微信版本的兼容性主要体现在小程序api库的版本上。有些比较老的版本,小程序api库不支持新版的api库,因此会出现兼容性问题,所以在测试微信版本的兼容性之前要先确定小程序使用的库版本在哪些微信版本上支持。

  • 缓存数据兼容性:

由于小程序在使用过程中可能会缓存部分数据,在新版本中,数据可能会被重新使用,如果存在数据不兼容,会出现非预期行为

  • 发布兼容性

最新微信客户端中小程序基础库发布有个灰度过程,一般为12个小时,api新老版本兼容

  • 网络兼容性

针对以上方面的兼容,我们制定一个兼容性的标准。标准数据可以通过以下渠道获取:操作系统兼容性可以通过埋点进行收集,而微信兼容性可以通过埋点或者小程序管理后台查看近30天内访问当前小程序的用户所使用的基础库版本占比。

兼容性标准制定以后,主要通过以下3种方式进行兼容性测试。

  1. Top10机型和微信客户端组合手工兼容(通过长按删除微信小程序清理缓存方式,进行新安装及覆盖安装的数据兼容性测试)
  2. 开发版本可以通过微信开发者工具提交远程真机随机测试(4-8台远程真机,免费,1天只能提交一次,追求最大覆盖页面算法)
  3. 外部兼容测试服务。

交互测试

  • 微信与小程序的交互(分享、地址、卡券等)
  • 与手机系统自带的app交互

易用性测试

  • 导航:定位到页面某个模块所在位置、回到顶部或底部、导航条的收展、导航标签的文字是否易理解等
  • 功能入口:重要且常用业务的功能入口是否在比较显眼的位置,是否方便搜索,业务操作过程是否便于大多数用户使用和查看。
  • 上下级进入和退出:不同层级之间的进入和返回实现是否有相应按键易操作
  • 字体、图片、动态交互效果
  • 其他:页面的相应时间、资源占用、渲染时间、耗电量、白屏等

安全测试

  • 微信授权
  • 小程序账号与app账号哦的关联

性能测试

这里的性能主要考虑的是客户端的性能,服务器性能则按照传统的服务器性能测试方案即可。小程序客户端性能和网页的性能测试非常类似,性能指标也大致相同。比如页面的白屏时间,首屏时间、资源占用、页面渲染时间等

小程序的开发工具提供了手动查看性能的窗口,只要在小程序开发版本中打开性能窗口即可查看性能数据,所以性能测试可以考虑以性能埋点上报的方式进行性能分析,上报时区分环境测试和运营环境,发布前先测试环境分析各个页面的耗时,即使发现页面的性能问题。

  • 页面白屏时间
  • 首评时间
  • 资源占用
  • 页面渲染时间
  • 帧率
  • ……

4、小程序测试和APP测试的区别

5、小程序测试点

  • 小程序授权登录、登录状态过期重新登录、获取当前账号信息、获取当前用户信息
  • 修改微信字体大小(我-设置-通用-字体大小),查看适配情况
  • 修改微信设置的语言,查看适配情况
  • 根据不同手机的操作系统及版本,查看适配情况
  • 权限相关:蓝牙、地理位置(精确定位和模糊定位)、wifi系统开关
  • 公众号文章中插入小程序,是否能正常被使用
  • 消息提示框,title文本最多显示7个汉字长度,边界值测试
  • 网络不好的情况下,是否显示loading提示框
  • 底部导航菜单能否正常提示新消息(小红点)
  • 页面下拉刷新
  • 数据缓存:保存数据到本地缓存、删除本地缓存
  • 地图:获取地图中心的经纬度
  • 图片:保存图片到系统相册、全屏预览图片、从本地选择图片上传或使用相机拍照
  • 视频:保存视屏到系统相册、拍摄视频或从本地相册中选视频、播放视频、暂停视频、停止视频、设置视频倍速播放、进入全屏、退出全屏、跳转到指定位置、发送弹幕
  • 音频:开始播放语音、结束播放语音、停止正在播放的语音、语音转文字功能
  • 小程序跳转:打开另外一个小程序、返回上一个小程序
  • 发起微信支付:成功、失败
  • 收获地址:看能否正常获取用户收获地址
  • 微信运动:如果有业务需求,可对比微信运动步数和当前步数显示是否一致
  • 剪切板:获取系统剪切板的内容,从微信聊天记录里复制的信息,看是否能粘贴到小程序中并正常显示
  • 网络:各种网络情况测试
  • 性能:内存、页面白屏时间、首屏时间、资源占用、页面渲染时间、帧率等
  • 扫码:吊起客户端扫码界面进行扫码,小程序中扫一扫功能是否能正常使用

资料来源:

微信小程序测试方案(上) - 知乎

小程序测试|小程序测试点 - 知乎 

 微信小程序测试方案(下) - 知乎

  • 0
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值