无法在由 selenium chrome 驱动程序控制的 Chrome window 中的 Chrome 开发工具中使用控制台
Cannot use console in Chrome Dev tools in the Chrome window controlled by selenium chrome driver
我可以在 Chrome Dev Tools 中正常使用控制台 Chrome window 来调试 xpath,如 $x("//div") 来调试路径。
但是,当 Selenium-Chrome-Driver 在 C# SpecFlow 中生成 Chrome window 时,在此 Chrome window 中,我无法通过键入 $x 在控制台中调试 xpath ("//div"),控制台报错:
$x("//div")
VM1819:1 未捕获类型错误:$x 不是函数
在 :1:1
已经尝试了以下代码来打开一些Chrome选项,但遇到了同样的问题。
ChromeOptions options = new ChromeOptions();
string user_data_dir = settings.SelectSingleNode("//LoginEmail/ChromeUserDataDir").InnerText;
user_data_dir = String.Format(@"user-data-dir={0}", user_data_dir);
options.AddArgument(user_data_dir);
options.AddArgument(@"--enable-devtools-experiments");
options.AddArgument(@"--auto-open-devtools-for-tabs");
webDriver = new ChromeDriver(options);
我在 chrome window 的开发工具控制台中找到了另一种调试 xpath 的方法,由 specflow chrome 驱动程序控制
正在使用 javascript:
document.evaluate(xpath, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.outerHTML
例如:
document.evaluate("//a[contains(@href, 'mail.google.com') and contains(@href,'#drafts')]/../../div[1]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.outerHTML
我可以在 Chrome Dev Tools 中正常使用控制台 Chrome window 来调试 xpath,如 $x("//div") 来调试路径。 但是,当 Selenium-Chrome-Driver 在 C# SpecFlow 中生成 Chrome window 时,在此 Chrome window 中,我无法通过键入 $x 在控制台中调试 xpath ("//div"),控制台报错:
$x("//div") VM1819:1 未捕获类型错误:$x 不是函数 在 :1:1
已经尝试了以下代码来打开一些Chrome选项,但遇到了同样的问题。
ChromeOptions options = new ChromeOptions();
string user_data_dir = settings.SelectSingleNode("//LoginEmail/ChromeUserDataDir").InnerText;
user_data_dir = String.Format(@"user-data-dir={0}", user_data_dir);
options.AddArgument(user_data_dir);
options.AddArgument(@"--enable-devtools-experiments");
options.AddArgument(@"--auto-open-devtools-for-tabs");
webDriver = new ChromeDriver(options);
我在 chrome window 的开发工具控制台中找到了另一种调试 xpath 的方法,由 specflow chrome 驱动程序控制
正在使用 javascript:
document.evaluate(xpath, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.outerHTML
例如:
document.evaluate("//a[contains(@href, 'mail.google.com') and contains(@href,'#drafts')]/../../div[1]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.outerHTML