zoukankan      html  css  js  c++  java
  • 自动化测试 -- 通过Cookie跳过登录验证码

    之前写过一篇博客:自动化测试如何解决验证码的问题

    介绍了验证码的几种处理方式,最后一种就是通过Cookie跳转过验证码,但讲的不够详细。今天,就详细的介绍一下这种方式。

    准备工具:

    ------------------

    fiddler

    Python+selenium

    ------------------

    以百度登录为例。

    验证码是汉字的,我想通过程序识别起来有点难度,也会比较麻烦。

    接下来开始动手。

    1、开启Fiddler 工具,像这样!

    2、通过浏览器登录正常登录百度账号。像这样!

    3、通过Fiddler获取登录请求的Cookie。找到Host为“passport.baidu.com”的URL,在右侧窗口查看该请求的Cookie

    然后,找到重要的两个参数BAIDUID”和“BDUSS”。

    4、编写Selenium自动化测试脚本,跳过登录。

    from selenium import webdriver
    
    driver = webdriver.Chrome()
    driver.get("https://www.baidu.com")
    
    # 添加Cookie
    driver.add_cookie({'name':'BAIDUID','value':'AAAAAAAAAAAAAA:FG=1'})
    driver.add_cookie({'name':'BDUSS','value':'AAAAAAAAAAAAAAAAAAAAAAAAAA'})
    
    # 刷新页面
    driver.refresh()
    
    # 获取登录用户名并打印
    username = driver.find_element_by_class_name("user-name").text
    print(username)
    
    #关闭浏览器
    driver.quit()

    首先,访问百度首页,处于未登录状态。

    然后,通过Selenium所提供add_cookie()方法添加Cookie信息。

    最后,刷新页面,现在已经是登录状态了,获取登录之后的用户名并打印。

  • 相关阅读:
    SDWebImage内部实现过程
    物理仿真元素
    物理仿真元素
    运行时案例
    使用运行时交换我们自定义的方法
    运行时交换系统方法
    HTML 钟表 小时钟
    JS小游戏寻找房祖名
    程序启动的完整过程
    ApplicationDelegate里的方法
  • 原文地址:https://www.cnblogs.com/fnng/p/6431484.html
Copyright © 2011-2022 走看看