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.用户新增删除登录再新增登录