selenium調用Chrome時自動選擇證書


在進行Web自動化測試時,有時網頁會彈出選擇證書的彈框,該彈框無法通過元素定位進行操作
如下圖的場景:

此時有兩個方法可以解決:

模擬鍵盤的Enter操作

此處以java為例:

import java.awt.*;
import java.awt.event.KeyEvent;

public class MyRunnable implements Runnable {
    @Override
    public void run() {
        try {
            Sleep.sleep(6000);
            Robot Robot = new Robot();
            Robot.keyPress(KeyEvent.VK_ENTER);
            Robot.keyRelease(KeyEvent.VK_ENTER);
        } catch (AWTException e) {
            e.printStackTrace();
        }
    }

    //測試類
    public static void main(String[] args) {
        MyRunnable myRunnable=new MyRunnable();
        Thread t =new Thread(myRunnable);
        t.start();
    }

}

修改注冊表,自動選擇證書

1、Win + R打開運行,輸入regedit打開注冊表編輯器

2、找到這個目錄(沒有的話依據此目錄手動創建項):

\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\AutoSelectCertificateForUrls

3、在AutoSelectCertificateForUrls中,右鍵選擇新建 - 字符串值

4、名稱為1,數據為{"pattern":"*","filter":{}}

5、打開Chrome瀏覽器,URL輸入chrome://policy,查看是否存在此策略,沒有的話重新加載一下

此時,打開瀏覽器就不會提示選擇證書了

注冊表中的 "pattern":"*",此處的*代表匹配所有網站,如果需要其他匹配,可以這樣寫: https://[*.]xxx.com


免責聲明!

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



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