Facebook登录
Facebook后台是拒绝接入未发版的app,如果要在测试阶段测试Facebook登录,是需要用开发者账号
申请开发者账号的流程
1、在https://developers.facebook.com/网址注册一个账号,然后将此账号的id给相关的研发人员添加成一个开发者账号
id获取方式
注册成功后,点击账号信息,地址栏中的id= 就是对应的ID 用户名,邮箱都可能重复,导致添加失败,所以通过id添加是最保险的
2、研发人员添加成功后,注册该账号的邮箱会收到一封邮件,点击接受即可测试Facebook登录
apple 登录
使用apple id登录,自己多注册几个apple id即可。
测试apple登录时,会出现两个选项:不隐藏邮箱地址、隐藏邮箱地址
两者的区别在于“不隐藏邮箱地址”是使用真正的邮箱地址进行注册登录,在数据库中也是明文显示邮箱;“隐藏邮箱地址”是将真正的邮箱地址隐藏,后台生成一个虚拟的apple邮箱来标记
举个例子
原始邮箱是1234@gmail.com
此邮箱注册了apple id,使用apple登录时,选择不隐藏邮箱地址,则整个流程都是通过1234@gmail.com来注册登录;而隐藏邮箱地址,则会生成一个虚拟邮箱地址如5ht4564@apple.com来代替1234@gmail.com,对于后台来说,服务端和客户端不会知道真实的邮箱是多少
对应的测试点
一般app的登录方式会有很多种,账号密码和三方(google、Facebook、apple)
假设产品需求是:不同方式注册的账户要分隔开,即一个邮箱通过账号密码的方式注册了,那通过其他方式就不能注册
在这样的前提下,测试上面的场景就是
1、邮箱A通过账户密码方式已注册,再通过appid进行登录,不隐藏邮箱地址,则会提示“账户已存在”。反过来同理
2、邮箱A通过账户密码方式已注册,再通过appid进行登录,隐藏邮箱地址,则会使用虚拟账户进行apple登录。反过来同理
3、邮箱A通过google登录,使用账户密码登录,会直接吊起google三方登录的页面
- 其它情况
有些app的设置会有修改邮箱、修改密码的功能,如果是通过三方登录,在后台账号是没有密码的,所以要么在注册流程中,强制用户设置密码,要么隐藏修改密码的入口;而apple登录有虚拟邮箱的情况,这也没法修改邮箱,因此常见的处理方式就是三方登录账号不允许修改邮箱、修改密码
这是比较核心的场景,其它就不一一列举了