1.通过wx.login()获取到用户的code判断用户是否授权读取用户信息,调用wx.getUserInfo读取用户数据
2.由于小程序后台授权域名无法授权微信的域名,所以需要自身后端调用微信服务器获取用户信息
3.通过wx.request()方法请求业务方服务器,后端把appid,appsecret 和code 一起发送到微信服务器,appid和appsecret都是微信提供的,可以在管理员后台找到
4.微信服务器返回openid 及本次登录的会话秘钥session_key
5.后端从数据库中查找openid,如果没有查找到记录那就说明该用户没有注册,如果有记录则继续往下走
6.session_keys 是对用户数据进行加密签名的秘钥,为了自身应用安全,session_key 不应该在网路上传输
7.然后生成session并返回给小程序
1.权限测试
1)未授权
未授权时,首次进入小程序弹出提醒授权登录
未授权进入小程序后提交数据时,提示授权补充信息才可提交
2)已授权
已授权微信登录后可被小程序管理方所获取信息,自动以微信的身份操作业务
3)同一微信号在不同手机端
同一微信号在不同手机微信端登录授权查看数据权限一致
2.功能测试
1)按功能模块测试
由大模块到小模块,逐步细化,尽可能全面覆盖
2)按业务流程测试
小程序主要业务,例如购物时选品、加购、下单。
根据业务流程把各个功能串起来,
同一业务不同入口可实现,每个路径都需要覆盖检查
3)按数据流向测试
页面间的数据流向,前端传给后端后数据流向,是否按照代码的正常执行
4)交互性检查
页面间的数据交互、前后台的交互、与微信的交互(小程序的入口、钱包相关)
3.网络
1.各网络情况验证
2.网络切换
2/3/4G--wifi 2/3/4G-无网 wifi--2/3/4G wifi--无网 无网--wifi 无网--2/3/4G
4.UI测试
1)字体按钮大小、格式、布局美观度
2)交互
5.兼容性测试
1)手机操作系统
当前时间市场上Android、IOS主流机型与主流版本
2)微信版本
微信版本的更新可能会带来页面样式等的异常,需要关注下
3)屏幕尺寸
这个简单就是常见的手机屏幕大小
4)分享后的显示及进入
5)分享后的扫码进入
6.易用性测试
1)导航
定位回到顶部,导航栏的收展,文字是否通俗易懂
2)功能入口
重要业务是否显眼,操作步骤是否繁琐
3)上下层级进入&返回
上下层级的跳转的按键是否易操作
7.性能
响应 资源占用
8.特殊场景
1)体验版和正式版都有限制小程序包大小不能超过3M,开发版对大小没有限制
2)页面层级跳转不能超过10次
3)缓存相关
测试场景
1.未注册过的用户,打开小程序一键登录成功,数据库记录数据
2.未注册账号密码登录不了
3.平台新增用户,小程序一键登录成功,数据合并
4.平台新增用户,小程序账号密码登录
5.用户新增删除登录再新增登录