我在使用 Chrome 驱动程序和 Selenium 时遇到了一些困难,我有 selenium.support 版本 3.141.0、chrome 驱动程序版本 2.43.0 和 Google Chrome 版本 71.0.3578.98。
在测试运行期间,我单击了一个打开新窗口的按钮,但由于某种原因,该窗口是空白的,而不是应该加载的站点。我尝试手动复制它,但除了测试运行之外它不会发生。
你有什么解释或知道发生这种情况的原因吗?
最佳答案
这个问题我遇到过好几次了...
我发现我试图点击的元素并不是实际调用重新呈现到下一页的元素...
我的解决方案
所以...为了到达父元素,我在 XPath 中使用了 parent
方法。
例如,如果我正在寻找具有 id='x_d'
的元素,那么我使用:Window.WaitForElement(By.XPath("//*[contains(@id , 'x')]")).click();
现在的问题是 Invoker 是父级,所以要访问父级 a
我将使用:
Window.WaitForElement(By.XPath("//*[contains(@id, 'x')]//parent :: a")).click();
希望对你有帮助!
关于c# - 在测试运行期间单击按钮会打开一个空白窗口 selenium c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53801023/