自动化测试之绕过验证码登录

这几天北京下大雨了,现在的自己已经圆满的成为了“北漂”,最悲催的上班不小心滑倒了,手划到了瓷砖上,去医院缝了好几针,哇~ 那感觉feel倍爽 。最近出了新项目,做了一点自动化,在这里用单手秀了一波“走位”------绕过验证码登录。

在这里总结了常见的几种方法,仅供参考。

话不多说,开整!

方法一

去掉验证码。让开发在测试版上面的验证码注销掉,

方法二

万能码。增加万能码,系统只要是识别到这组码,就能允许通过。

方法三

通过Cookie跳过登录验证码

1、首先下载Fiddler。地址:链接:https://pan.baidu.com/s/16SqhAnG1t2HvFOwkJroW_g 密码:1l02

2、进入fiddler,首先获取证书,Tools-->Fiddler Options-->Https,勾选Decrypt Https traffic-----ok

自动化测试之绕过验证码登录_第1张图片

3、浏览器进入百度首页,点击登录按钮,输入相关信息,点击登录按钮

自动化测试之绕过验证码登录_第2张图片

4、在fiddler右侧的Inspectors-->Cookies查看

自动化测试之绕过验证码登录_第3张图片

注意:百度登录重点查看BAIDUID和BDUSS。如果要测试其他项目,最好先询问一下开发,哪些数据是用户名和密码的,或者是必需的。我们的项目主要看websid,我们因为未完成后台识别到websid就能登陆进去的这个功能,我只能用前两种方法,这个最好问一下开发,所以这里,只能用百度实践一下。

代码如下:

# -*- coding:utf-8 -*-

from selenium import webdriver
from time import sleep

driver = webdriver.Firefox()
driver.get("https://www.baidu.com/")

# 手动添加cookie
driver.add_cookie({'name': 'BAIDUID', 'value': '46CD04C900...(2825A0E64560C87243BDAF2F6CE0F7F7:FG=1)'})
driver.add_cookie({'name': 'BDUSS', 'value': 'DBZOWVJM3ZWT0w3aDRlR3lTQzBxb2c1RnRXSH4yVzM5eEtBNFZFSX5FVFZ3SHhiQVFBQUFBJCQAAAAAAAAAAAEAAABb09~Jc3VudGFvYmFieTE5OTUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANUzVVvVM1VbO'})
sleep(2)
driver.refresh()  #刷新
sleep(3)

driver.quit()

你可能感兴趣的:(web端自动化)