selenium利用cookie跳过验证码登录

1、测试场景

在实现web自动化的过程中,为了解决每次登录时,验证码会随机变化的问题,以达到测试已登录状态的其他页面模块,我们需要利用cookie跳过登录,完成测试。

正常情况下,项目测试人员是不会遇到这种问题的,会找开发要一个固定验证码的万能账号,以结合selenium实现自动化登录。(后续会有实现一次登录,多次测试其他已登录页面的文章可以参考一下。)

2、操作原理

在等待间隙中,先手动登录,填写账密、验证码信息,登录成功 — 利用selenium的get_cookie() 获取已登录cookie — 再添加cookie至driver驱动 — driver.get(“url”)即可访问登录后的页面。

如下代码解析:
(为了命令清晰明了,使用API进行举例,没有使用定位元素定位。)

from selenium import webdriver
import time

class SkipCaptcha(object):

    def __init__(self):
        self.driver = webdriver.Chrome()

    def login(self):
        driver = self.driver

        #在间隙时间40S内在浏览器中输入账号、密码、验证码等手动完成登录操作即可
        driver.get("http://10.124.XXX.XXX/#/login")
        time.sleep(40)
        
        # 获取登录后的cookies。可以根据获取的cookie自定义,选取cookie中的关键信息,以便后续访问其他页面
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值