设置Selenium和ChromeDriver以无头模式运行

我正在尝试使用xUnit,Selenium和Chrome Canary(无头模式)运行浏览器测试,但始终出现此错误:

OpenQA.Selenium.WebDriverException
The HTTP request to the remote WebDriver server for URL 
http://localhost:58692/session timed out after 60 seconds.

这是我的代码:

var chromeOptions = new ChromeOptions
    {
        BinaryLocation = @"C:\Users\<USERNAME>\AppData\Local\Google\Chrome SxS\Application\chrome.exe",
        DebuggerAddress = "127.0.0.1:9222"
    };

chromeOptions.AddArguments("no-sandbox", "headless", "disable-gpu");
_driver = new ChromeDriver(chromeOptions) {Url = Url};

我是C#的新手,所以不确定我是在做明显错误的事情,还是只是缺少设置.仔细检查以上错误告诉我,我需要设置调试器地址并使用no-sandbox标志,但似乎都没有帮助.

使用这些版本:

selenium 3.4
chromedriver 2.29
xunit 2.2

解决方法:

取出调试器地址即可正常工作.

var chromeOptions = new ChromeOptions
{
    BinaryLocation = @"C:\Users\<USERNAME>\AppData\Local\Google\Chrome SxS\Application\chrome.exe",
};
上一篇:c#-单元测试仅在构建服务器上运行时失败


下一篇:单元测试-xUnit总结