自动化测试遇到手机号验证码怎么办?

这个是目前基本所有系统都支持的一个登陆方式,这个问题也是是测试面试时经常遇到的一个问题,解决的办法很多,各种方法都有优劣,接下来就好好探讨下

 

要想把这个问题想清楚,其实关键点是首先要想清楚手机号和验证码登录的过程,过程清楚了,解决思路也就清楚了

 

第一步: 手机号验证码登录的过程:

1、页面输入手机号,点击获取验证码

2、后端收到手机号,校验手机号格式的正确性,然后调用短信网关发送验证码, 短信网关只是负责发送短信, 要发送的手机号和短信内容是我们的系统给短信网关的, 所以我们系统肯定在一个地方存这个手机号和验证码的对应关系, 有可能缓存(redis),有可能数据库,也有可能其他地方

3、手机收到短信验证码

4、页面输入验证码 点击提交

5、系统收到登陆请求的手机号和验证码, 然后在保存手机号验证码对应关系的地方取出对应手机号的验证码, 然后比较两个验证码是否相等,相等就登陆成功,不相等就登录失败, 当然还得在验证码的有效期内

 

第二步: 分析在哪里可以解决自动登录的问题

其实就是第五步验证过程是判断我们是否登录成功的关键一步,那么搞定第五步有哪些方案呢?

方案1:让后端设置一个万能码, 这样登录的时候,如果是这个码,就直接默认登录成功,相当于一个后门, 这个时候需要和后端确认下,只有指定的手机号这个万能码才生效, 这样可以最大程度避免有万能码代码意外发到线上环境带来的损失。

方案2:让后端去掉短信验证码登录过程࿰

你可能感兴趣的:(python,selenium,接口测试,自动化测试,selenium)