C# Selenium:每次加载页面时调用方法
每次某个文本出现在页面上时,我都试图抛出一个异常。为了实现这一点,方法应该在每次页面加载完成时检查是否应该抛出异常。我现在遇到的主要问题是点击,也就是当点击一个WebElement打开一个新页面时C# Selenium:每次加载页面时调用方法,c#,selenium,C#,Selenium,每次某个文本出现在页面上时,我都试图抛出一个异常。为了实现这一点,方法应该在每次页面加载完成时检查是否应该抛出异常。我现在遇到的主要问题是点击,也就是当点击一个WebElement打开一个新页面时 如何实现在页面加载完成时始终调用自定义方法?以下是您问题的答案: 当我们通过默认配置使用WebDriver时,属性pageLoadStrategy设置为normal,这意味着一旦页面加载完全完成文档。readyState设置为complete,即WebDriver根据脚本执行下一个操作时 现在,如果您
如何实现在页面加载完成时始终调用自定义方法?以下是您问题的答案: 当我们通过默认配置使用WebDriver时,属性
pageLoadStrategy
设置为normal
,这意味着一旦页面加载完全完成文档。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"));
IWait wait=new OpenQA.Selenium.Support.UI.WebDriverWait(driver,TimeSpan.FromSeconds(30.00));
等待.Until(driver=>((IJavaScriptExecutor)driver).ExecuteScript(“returndocument.readyState”).Equals(“complete”);
如果这回答了您的问题,请告诉我。您可以使用
document.readyState
检查页面是否已完全加载。