如何通过 Selenium 打开 Chrome 浏览器控制台?

Pra*_*dhe 7 selenium google-chrome google-chrome-devtools selenium-chromedriver selenium-webdriver

我想通过在 selenium webdriver 中按键盘键Ctrl+ Shift+来打开 chrome 浏览器控制台j。我可以使用Robot类来执行此操作,但我希望在没有Robot类的情况下执行此操作。我已经使用 sendKeys 使用了 Actions 类和 Keys 类。但我无法打开浏览器控制台。

是 chrome 浏览器版本问题还是操作系统?为什么浏览器控制台没有使用 Action 类和 Keys 类打开。?

Deb*_*anB 9

要打开 chrome 浏览器控制台,您可以使用ChromeOptions--auto-open-devtools-for-tabs参数的类,如下所示:

  • 测试配置:

    • Selenium:Selenium 独立服务器 v3.14.0
    • ChromeDriver:ChromeDriver 2.46.628402
    • 浏览器:谷歌浏览器 72.0.3626.96
  • 代码块:

    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.chrome.ChromeOptions;
    
    public class A_Chrome_Browser_Console {
    
        public static void main(String[] args) {
    
            System.setProperty("webdriver.chrome.driver", "C:\\Utility\\BrowserDrivers\\chromedriver.exe");
            ChromeOptions options = new ChromeOptions();
            options.addArguments("start-maximized");
            options.addArguments("--disable-extensions");
            options.addArguments("--auto-open-devtools-for-tabs");
            WebDriver driver = new ChromeDriver(options);
            driver.get("https://www.google.com/");
            System.out.println(driver.getTitle());
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  • 控制台输出:

    Google
    
    Run Code Online (Sandbox Code Playgroud)
  • 浏览器控制台快照:

chrome_browser_console

您可以通过 Selenium 在 Chrome 上的 Opening inspect (pressing F12) 中找到相关的基于的讨论

  • @DebanjanB 默认情况下,“元素”选项卡是打开的,并且控制台是隐藏的。您可以从答案中的屏幕截图中完美地看到这一点。如果您可以单击“控制台”选项卡来打开控制台,那么没有什么可以阻止您在测试中放置断点并通过击键打开它 - 为什么还要费心更改 Chrome 参数呢?但如果您像我一样只有 VNC 处于查看模式,那么这根本没有帮助。 (3认同)
  • 它不是控制台,而是开发工具。你是如何获得这方面的选票的? (2认同)