赏金任务每周更新,请持续关注哦
题目
- 自动化测试如何处理验证码?
参与方式
- 本帖下方回复你的答案即可
赏金
- 100元京东购物卡
活动时间
- 2023年1月16日 - 2023年1月22日
备注:由于本任务结束时正处于春节假期期间,故评审后获奖学员赏金发放会于本月末之前完成,请耐心等待。
本周赏金任务汇总:🌈 赏金任务发布 2023-01-16
本问题参与赏金活动,详情点击 赏金活动上线啦 丨做赏金任务挑战千元奖金 查看活动介绍
赏金任务每周更新,请持续关注哦
备注:由于本任务结束时正处于春节假期期间,故评审后获奖学员赏金发放会于本月末之前完成,请耐心等待。
本周赏金任务汇总:🌈 赏金任务发布 2023-01-16
本问题参与赏金活动,详情点击 赏金活动上线啦 丨做赏金任务挑战千元奖金 查看活动介绍
和后端打好关系,让后端大哥弄个通用验证码
让前端把验证码功能消失
音视频验证码的使用较少,且受验证时间长的限制。音频验证码起初是作为视觉类验证码的补充品出现,面向具有视觉障碍的用户[2]。它可分为倾听者机制和话语者机制,倾听者机制要求用户听一段内容可能是一个词或几个随机数的音频,正确键入音频内容即可验证成功,话语者机制利用的是人声与合成声之间的差异性,它要求用户读一段给定的文字来判定该用户是否合法。而视频验证码往往给用户提供一个视频文件,要求用户根据视频内容选择最合适视频的选项。
图像验证码
图像验证码非常受研究者们的喜爱,各种有关图像验证码的研究层出不穷。相比于需要键盘输入的文本验证码,图像验证码往往只需用户用鼠标进行点击、拖拽等简单操作。它要求用户理解图片内容,然后根据提示给出反馈。常见的图像验证码可分为选择类、拖拽类和拼图类。
文本验证码
文本验证码是一种使用最广泛,历史最悠久的验证码,它展示一张含有多个字符的图片,要求用户正确识别并在输入框中输入对应的字符,输入全部正确即认证成功。这些字符多为大小写英文字母、数字或它们的组合,伴随着噪线、扭曲、多字体、空心、复杂背景等机制来提升安全性。目前也已经有大量中文文本验证码投入了线上使用。
通常来说如果需要做ui自动化遇到验证码的问题,基本上都会和开发去商量让开发修改代码屏蔽验证码信息,或者让开发配置一个万能的验证码,接口传入固定值,可以验证成功。
利:显而易见,开发开了一个后门,在做ui自动化做起来会比较方便,不用去做特殊处理
弊:测试环境可以通过屏蔽之类的解决问题,但是会有很大的安全隐患,在预发生产回归时完全不能通过此方法来解决
和开发沟通了解验证码生成流程一般的情况如下:
1.调用获取验证码接口:生成验证码
2.验证码存入redis中
3.验证码接口验证后,从redis中取出对应验证码进行验证
了解流程后我们就可以通过代码链接redis然后知道redis key后通过connectRedis进行查询,放入自动化环节
利:通过了解后端流程,成功获取到redis的key方便
弊:不可控因素,redis会有自己的一些问题,如果出现redis挂掉,或者不一致场景会造成不稳定,只能对个别场景有用,不是通用场景
利:我觉得没有什么好处,不是很方便
弊:非常不稳定
1、如果是页面上验证码,图像识别获取还不错,可以练习下使用ocr模块
2、如果是通过短信的方式,可以查找验证码对应的库,可以练习下mysql库的操作
3、业务沟通的方式,账号白名单,固定账号不需要验证码,直接绕过输入验证码就可以通过
4、楼上看到的通用的验证码的方式,也很不错。