Selenium:每次页面加载时调用方法

时间:2017-05-31 12:03:16

标签: c# selenium

每次在页面上显示某个文本时,我都会尝试抛出异常。为了实现这一点,如果应该抛出异常,每次页面完成加载时都应该检查一个方法。我现在遇到的主要问题是在点击WebElement时打开新页面时点击,AKA。

如何在页面完成加载时始终调用自定义方法?

1 个答案:

答案 0 :(得分:0)

以下是您的问题的答案:

当我们通过默认配置使用WebDriver时,属性pageLoadStrategy设置为normal,这意味着一旦页面加载完全完成,document.readyState就会设置为complete就是当WebDriver根据你的脚本执行下一个动作时。

现在,如果您想让自己确信document.readyState设置为complete,您可以在EplicitWait的帮助下在脚本中实现以下代码块登录你的控制台:

IWait<IWebDriver> wait = new OpenQA.Selenium.Support.UI.WebDriverWait(driver, TimeSpan.FromSeconds(30.00));
wait.Until(driver => ((IJavaScriptExecutor)driver).ExecuteScript("return document.readyState").Equals("complete"));

如果这回答你的问题,请告诉我。