通過Cookie跳過登錄驗證碼【限cookie不失效有用】


驗證碼,相信每個寫web自動化測試的同學來說,都是個頭疼的事,怎么辦呢?

方法還是有的,先說今天這種方式,通過cookie繞過登錄驗證碼

思路:

需要你通過抓包工具抓到你登錄的cookie

接下來開始動手。

1、開啟Fiddler 工具,像這樣!

 

2、通過瀏覽器登錄正常登錄百度賬號。像這樣!

 

3、通過Fiddler獲取登錄請求的Cookie。找到Host為“passport.baidu.com”的URL,在右側窗口查看該請求的Cookie。

然后,找到重要的兩個參數“BAIDUID”和“BDUSS”。

 4、直接上代碼

package seleniumapi;

import org.openqa.selenium.Cookie;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.AfterClass;

public class LoginWithCookie {
    
    WebDriver driver;

    @BeforeClass
    public void beforeClass() {
        System.setProperty("webdriver.chrome.driver", "chromedriver.exe");
        driver=new ChromeDriver();
        
    }
    @Test
    public void testLoginWithCookie() {
        driver.get("https://www.baidu.com/");
        driver.manage().window().maximize();
        Cookie cookie=new Cookie("BAIDUID", "你的賬號cookie");
        driver.manage().addCookie(cookie);
        Cookie cookie1=new Cookie("BDUSS", "你的賬號cookie");
        driver.manage().addCookie(cookie1);
        driver.navigate().refresh();
    }

    @AfterClass
    public void afterClass() {
//        driver.quit();
    }

}

首先,訪問百度首頁,處於未登錄狀態。

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

運行結果如圖:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM