如何测试一个微信小程序?_微信小程序测试
目录
1.什么是微信小程序
2.微信小程序测试的策略和注意事项
2.1.测试前准备(环境搭建)
2.2.测试范围
1、权限测试
2、功能测试
3、版本配置测试
4、兼容性测试
5、易用性测试
6、性能测试
7、安全
8、消息限制
2.3.注意事项
1、上线
2、常用功能
1.什么是微信小程序
微信小程序是一种运行在微信客户端的应用程序,可以在微信中直接使用,无需下载安装。它可以提供各种功能和服务,包括在线购物、社交娱乐、生活服务、工具软件等。微信小程序具有轻量级、快速启动、便捷分享等特点,用户可以通过扫码、搜索、分享等方式快速找到并使用小程序。
2.微信小程序测试的策略和注意事项
2.1.测试前准备(环境搭建)
1)前端页面
微信Web开发者工具安装、授权测试用的微信号可预览和调试小程序…
可参考此文: 微信Web开发者工具-下载、安装和使用图解
2)管理后台
配置内网测试服务器环境,通过PC端Web站点管理小程序前端的输出内容,可从开发人员获取管理账号进行测试
2.2.测试范围
1、权限测试
需要检查以下几种情况下微信用户访问的权限
1)未授权微信登录小程序
未授权时,一般使用一些业务功能的时候,都会弹出提醒:先授权再操作对应功能。or在提交数据到后台的时候,会提示补充相关身份信息才能提交成功
2)已授权微信登录小程序
授权微信访问小程序,意味着自己的微信账号可被小程序管理方所获取,自动以微信的身份行使业务操作权限,比如咨询、支付、数据查询等
3)同一微信号在不同手机端登录授权查看数据权限
同一微信号在不同手机微信端授权登录同一小程序之后,所能查看的数据和操作的权限都应该是同步一致的
2、功能测试
1)按功能模块测试
根据设计好的各个大类功能模块划分,然后再逐级细化,覆盖到每个功能尽可能全面的测试点
2)按业务流程测试
小程序的业务,比如咨询、支付、播放、查询、下载。把各个功能点串联起来形成完整的业务流程来检查;同一个业务,可能有不能的路径来实现,每个路径都需要覆盖检查
3)按数据流向测试
根据数据从某一端操作输入和输出流向,设计基于数据流的测试用例,输出的数据也可能成为另外一端的输入,检查输入的数据是否按照代码逻辑执行正确的输出,是否数据发生异常(无法输入;有输入却无任何输出;输出不正确;多余的输出其他信息…)
4)同一功能不同的入口有效性的检查
小程序中在首页、列表页、详细页、其他的业务功能相关页面,都有可能存在同一个功能的入口,如付费咨询、免费咨询业务中,可以直接从首页进入付费咨询入口,也可以通过免费咨询入口再切换到付费咨询入口。每一个入口路径都需要覆盖检查
5)交互性检查
一般而言,产生数据和功能交互变化的情况主要有这几个分类:前台前台、后台后台、前台后台。前台从A1页面提交的数据,可能需要在前台A2页面查看到,也会在对应后台的B页面查到记录;后台B1页面修改or添加的数据,对应到前台的A页面产生交互变化,后台本身的不同页面之间也可能存在同一个数据的输出值
3、版本配置测试
有时候小程序一次性做了几套不相同的模板,在前端程序代码中修改配置参数,保存后重新编译,即可从一个版本切换到另一版本,同时也需要在管理后台作相应的切换,以保证前端进行数据调用
对于非公用的部分:不同版本直接的切换,需要保证彼此的功能模块和数据独立性不受干扰影响,即不同版本的管理后台所添加的数据只应该调用到各自对应模板的前台小程序中,不同版本的小程序从前台提交的数据也只会提交到各自管理后台,不应该有交差重叠
对于公用的部分:切换不同的模板,都会显示相同的内容
4、兼容性测试
1)手机操作系统
常规的手机端OS为:Android(7.x/6.x/4.x/2.x…)、IOS(11.x/10.x/9.x…)
2)微信版本
对于已上线的小程序,有可能会因为微信版本升级之后导致对部分小程序的组件支持产生冲突,手机端微信上查看的小程序页面出现样式有异常,比如出现少部分区域的黑屏,这种情况需要同步在小程序的程序包中修改一些组件再次更新
5、易用性测试
1)导航
定位到页面某个模块所在位置,回到顶部or底部,导航条的收展,导航标签的文字是否容易理解
2)功能入口
重要且常用业务的功能入口,是否在比较显眼的位置,业务操作过程是否便于大多数用户使用和查看
3)上下层级进入&返回
首页列表页、列表页详细页 、首页详细页。不同层级之间的进入和返回实现是否有相应按键易操作
4)字体、图片、动态交互效果
字体:标签、标题、内容、动态播放字体…
图片:轮播图、背景图、封面图、触屏产生的交互图…
6、性能测试
1)小程序的性能不是测试小程序的重点,优先级也比较低。小程序的性能和WEB的性能测试非常类似,性能的常用指标也大致相同。包括页面的白屏时间,首屏时间,资源占用,页面渲染时间,帧率等等。
2)小程序开发版中打开性能窗口即可看到页面的性能数据, 但如果是正式发布的版本需要通过埋点才能搜集这些信息。
7、安全
1)小程序是内嵌到微信的,但腾讯未必花太多精力在小程序的安全性上,不要指望腾讯帮你提升安全性。对于测试人员,安全相关的测试能做的毕竟有限,我们所要做的就是知道小程序有安全隐患就行了,比如小程序运行后在手机上能看到一个wxapkg的一个包,这个包解压后就是可以认为是小程序的源代码。
8、消息限制
1)根据开发文档,有如下消息限制
2)支付,当用户在小程序内完成过支付行为,可允许开发者向用户在7天内推送有限条数的模板消息(1次支付可下发1条,多次支付下发条数独立,互相不影响)
3)提交表单,当用户在小程序内发生过提交表单行为且该表单声明为要发模板消息的,开发者需要向用户提供服务时,可允许开发者向用户在7天内推送有限条数的模板消息(1次提交表单可下发1条,多次提交下发条数独立,相互不影响)
2.3.注意事项
1、上线
1)上线配置
内网测试、线上测试对应不同url接口;上线前,需要修改内网测试接口地址为正式环境使用的接口。同时还有一个配置参数的 转换设置也要关注到
2)审核
将程序包提交给微信官方进行审核,工作日审核一般0.5d-1d之内可以搞定
3)发布
微信官方审核通过后,即可发布小程序到正式环境中访问使用,通过手机微信端搜索对应小程序的名字即可搜索到
2、常用功能
1)缓存清理
微信Web开发者工具、手机端微信的缓存清理。
使用场景:数据修改后检查修改的效果,程序修改代码后检查效果等情况,可清除缓存后再检查
2)编译
更新测试版本时使用。小程序需要经过几轮的循环测试和修复,开发人员每次修复Bug完成之后会添加新的程序包给到测试人员,测试人员则需要通过微信Web开发者工具删除旧版本的项目程序,重新添加新版本的程序包,然后编译调试