微信小程序测试方法和心得

小编 2026-06-26 阅读:1811 评论:0
2017年1月9号微信小程序正式上线,不需要安装,只要在微信里找到这个小程序打开即可使用。 以前测试手机端会接触到原生程序、H5页面和混合型程序,现在又多了个小程序。 我们该如何测试微信小程序呢? 功...

2017年1月9号微信小程序正式上线,不需要安装,只要在微信里找到这个小程序打开即可使用。

以前测试手机端会接触到原生程序、H5页面和混合型程序,现在又多了个小程序。

我们该如何测试微信小程序呢?

功能测试

功能测试以需求文档和交互视觉文档为准,如果没有这些文档,参考APP的测试方法,也就是说就把它当做手机的APP来测试即可。我看到网上有人说把小程序当做WEB来测试(原因大概是里面有不少JS代码),这一点我不认同,因为我们现在测的是功能和主流程,并且是在手机上进行的测试。

兼容性测试

操作系统兼容性

这里的操作系统主要是指android系统和iOS系统。小程序运行在微信中,看起来是跟操作系统没关系,实际上还是有关系的,因为底层调用依赖于具体的操作系统。按照官方文档在微信小程序在ios上是运行在JavaScriptCore中但在Android上是通过X5JSCore来解析的。

如果有条件,不仅要覆盖android和iOS,包括主流的Android品牌也要覆盖,比如华为,VIVO等等。覆盖到最新的试用版和当前流行的主要版本。

屏幕兼容性

普通的手机APP会有屏幕兼容性的问题,小程序同样有这样的问题,只不过相对少了些。微信小程序定义了一个新的尺寸单位rpx(responsive pixel)可以适配不同尺寸的屏幕,在页面上定义对象的单位是rpx就可以在不同的屏幕上适配。但1rpx的像素经常在iphone7p上出现断线的情况。因此需要在测试过程中关注1rpx像素的显示。

微信兼容性

因为微信小程序SDK的API版本一直都在更新,导致SDK的API有可能有向下的兼容性问题并最终会影响到在最新版本小程序SDK上开发的程序不能在啊低版本的SDK 上像预期的那样运行。所以测试微信版本的兼容性之前要先确定小程序使用的库版本在哪些微信版本号上支持。

网络测试

网络测试可以参考APP的测试,比如网络状态和环境的切换,断网,通过设置代理进行弱网的测试等等。主要是考察小程序在各种网络状况下的运行情况。

接口测试

目前大部分都是微服务的架构,所以前端的小程序调用的是后台的接口,所以要对接口进行测试,这里的接口测试和平时的接口测试是一样的,没有特别之处。但是我们需要了解的就是,微信小程序SDK提供的接口时websocket,这是另外一种接口形式。

易用性

APP的易用性该如何测试,小程序的易用性就如何去测试

功能交互   

因为小程序是在微信里面,所以还需要验证一些跟微信的交互

入口

可以通过微信聊天页面的下拉框找到小程序(如果已经打开过一次);也可以通过“发现”模块下的“小程序”中的搜索框搜索到对应的小程序;还可以通过“附近的小程序”找到小程序

交易

小程序支持交易,那么它与微信的钱包、卡包都是可以交互的。如果有交易功能,需要验证各种交易场景。

缓存

比如需要验证清空微信的缓存是否对小程序有影响

消息限制

根据开发文档,有如下消息限制

支付当用户在小程序内完成过支付行为,可允许开发者向用户在7天内推送有限条数的模板消息(1次支付可下发1条,多次支付下发条数独立,互相不影响)

提交表单 当用户在小程序内发生过提交表单行为且该表单声明为要发模板消息的,开发者需要向用户提供服务时,可允许开发者向用户在7天内推送有限条数的模板消息(1次提交表单可下发1条,多次提交下发条数独立,相互不影响)

性能测试

小程序的性能不是测试小程序的重点,优先级也比较低。小程序的性能和WEB的性能测试非常类似,性能的常用指标也大致相同。包括页面的白屏时间,首屏时间,资源占用,页面渲染时间,帧率等等。

小程序开发版中打开性能窗口即可看到页面的性能数据, 但如果是正式发布的版本需要通过埋点才能搜集这些信息。

安全

小程序是内嵌到微信的,但腾讯并未花太多精力在小程序的安全性上,2017年小程序的大漏洞就说明了这一点。不要指望腾讯帮你提升完全性。对于测试人员,安全相关的测试能做的毕竟有限,我们所要做的就是知道小程序有安全隐患就行了,比如小程序运行后在手机上能看到一个wxapkg的一个包,这个包解压后就是可以认为是小程序的源代码。

权限

这里的权限指的是访问权限是否授权,所以权限测试分为“已授权”和“未授权”,所以需要测试在跳转到微信小程序时“允许访问”和“不允许访问”这两种情况下小程序是否各项功能能够正常工作。

注:

测试人员也可以参考小程序官方的文档 https://developers.weixin.qq.com/miniprogram/design/index.html



作者:九遐
链接:https://www.jianshu.com/p/b9d2e66af160
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

版权声明

本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。

热门文章
  • 机房智能化温湿度解决方式之POE供电以太网温湿度传感器

    机房智能化温湿度解决方式之POE供电以太网温湿度传感器
    机房智能化温湿度解决方式之POE供电以太网温湿度传感器 北京盈创力和电子科技有限公司 智能型TCP网口温湿度记录仪 北京IP网络温湿度记录仪厂家,北京盈创力和 北京智能型TCP网口温湿度记录仪IP网络温湿度记录仪是一种新型的基于TCP/IP协议双绞线以太网标准温湿度采集模块,利用它可以实现现场温度值、相对湿度值的采集,同时利用其自身的RJ45通信接口可以方便地和机房监控主机或交换机集线器进行联网。 工作于-40℃~85℃工业级带...
  • Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering

    Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering
    Problem Statement 我们考虑一个具有马尔可夫性质、非线性、非高斯的状态空间模型(State Space Model):对于一个时间序列上的观测结果{yt,t∈N}\\{ y_t , t \\in N \\}{yt​,t∈N},我们认为每个观测结果yty_tyt​的生成依赖于一个无法直接观察的隐变量xt∈{xt,t∈N}x_t \\in \\{x_t , t \\in N \\}xt​∈{xt​,t∈N},即:p(...
  • HTTP状态保持的原理

    HTTP状态保持的原理
    a)在用户登录之后,浏览器返回响应的时候会在响应中添加上cookieb)浏览器接收到cookie之后会自动保存c)当用户再次请求同一服务器中的其他网页的时候,浏览器会自动带上之前保存的cookied)服务接收到请求之后可以请 request 对象中取到cookie 判断当前用户是否登录  Http是无状态的,就是连接时数据互通,关闭后...
  • Hive 系统函数及示例

    Hive 系统函数及示例
    查看所有系统函数 show functions; 函数分类 内置函数【系统函数】 数学函数: floor、round、ceil、cos、log2等 字符串函数: length、reverse、trim、lower、get_json_object、repeat等 收集函数: size 转换函数: cast 日期函数: year、month、datediff、date、date_add等 条件函数: coalesce、case…w...
  • CSRF的原理和防范措施

    CSRF的原理和防范措施
    a)攻击原理:i.用户C访问正常网站A时进行登录,浏览器保存A的cookieii.用户C再访问攻击网站B,网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交,传指定的参数iii.而攻击网站B在访问网站A的时候,浏览器会自动带上网站A的cookieiv.所以网站A在接收到请求之后可判断当前用户是登录状态,所以...
标签列表