川石教育
全国咨询热线:136-9172-9932
  1. 首页 > 资讯与干货 > IT资讯

自动化过程中验证码的应对方法

作者:川石学院 日期:2021-05-31 10:44:20 点击数:

  在给学生上课时,经常会有学生问到:自动化测试过程中关于验证码的问题,我给大家整理了几点,今天一起来看看自动化过程中验证码的解决思路。很多系统为了安全起见,会在关键节点要求用户输入验证码,如避免密码暴力破解,或自动化程序的刷票,抢购等行为。

自动化过程中验证码的应对方法(图1)

  验证码也是各式各样,如图片验证码,手机验证码,滑块验证码等,随着破解能力的增强,验证码也是日趋复杂。

  验证码对保护系统安全可以说功不可没,但是对于我们自动化测试人员而言却是个麻烦。

  由于验证码每次都不一样,我们代码里如果写成固定值,那么就会操作失败。相当于验证码也把我们自动化测试人员拒之门外了。

  那么自动化人员处理处理这种情况呢,一般我们解决方法分为以下几种:

  1、屏蔽验证码

  2、万能验证码

  3、破解验证码

  4、Cookie跳过验证码

  A. 屏蔽验证码,比如设置个配置项允许用户选择登录时不需要输入验证码。

  B. 万能验证码,好比万能钥匙,无论你给的是什么,我的万能验证码都是可以验证通过的,不过这种比较有风险,万一泄露出去,系统的验证码就形同虚设了。

  以上两种方式,都需要开发人员的额外的代码实现。如果测试人员想自力更生自己解决这个问题呢:

  C. 破解验证码:目前市面上有很多破解验证码的工具,供大家使用如tesseract-ocr或百度AI文字识别接口等。但是由于验证码类型各异,复杂度也与日俱进,导致我们破解时成功率比较低。成功率比较低的情况对自动化而言影响是很大的,导致很多用例由于验证码而失败,或者需要反复不断的尝试才可能成功,导致时间浪费。基于这一点,破解验证码也不是一个好的解决方案。

  D. 通过特殊手段跳过验证码验证阶段,比如不做登录操作,而且直接做后续请求,请求时带正常登录用户的可用cookie,那么是不需要登录就可以操作成功的,从而避免了验证。

  这种方式也是有的

  以上4种方法,我们比较推荐通过配置临时去掉验证码这种方式。

  今天关于“自动化过程中验证码的应对方法”就说到这里,你有更好的解决方法吗,欢迎讨论哟。

  附:川石信息全国校区最新开班时间,课程资料获取13691729932(微信同号)。  

自动化过程中验证码的应对方法(图2)


相关文章
  • 亚马逊运营成功转行软件测试,薪资13K表示很满意!2021-05-31 10:44:20
  • 西安川石的兰朋友喊你来当他的学弟学妹啦!2021-05-31 10:44:20
  • 国外的月亮也不一定比国内测试猿的年薪美~2021-05-31 10:44:20
  • 建筑工程专业朱同学成功转行为软件测试人!2021-05-31 10:44:20
  • 财务管理专业转行软件测试月薪甩会计几条街!2021-05-31 10:44:20
  • 只有技术沉淀才能成功上岸,深圳就业薪资13K!2021-05-31 10:44:20
  • 薪资11K!实现自我价值,从掌握一门IT技术开始...2021-05-31 10:44:20
  • 文科生转行软件测试照样拿下高薪15K!2021-05-31 10:44:20
  • 恭喜罗同学喜提19.5K,成功入行软件测试!2021-05-31 10:44:20
  • 毕业1年,迷茫的他最终选择转行软件测试2021-05-31 10:44:20