我有一个充满问题的网页,当用户点击“提交”按钮后,他们会回答下一页。有没有办法测量在selenium webdriver中加载下一页所需的时间?编程语言是c#。
答案 0 :(得分:0)
您可以使用StopWatch
来衡量点击之间花费的时间,并在新页面上显示元素。
var Driver = new InternetExplorerDriver();
//first page - click
Driver.Instance.FindElement(By.Id("submit-button")).Click();
Stopwatch s = Stopwatch.StartNew();
//set waiting period
Driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(60));
//second page - wait for element to be available.
var element = Driver.Instance.FindElement(By.Id("id-on-second-page"));
//stop timer
s.Stop();
//reset waiting period
Driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(0));
Console.WriteLine("Elapsed Time: {0} ms", s.ElapsedMilliseconds);
答案 1 :(得分:0)
除了StopWatch
之外,这里还不错[/ p>]
测量在selenium webdriver中加载下一页所需的时间
将是LoadableComponent,因为一旦它准备就绪,它将provide you带有页面的加载状态
protected override bool EvaluateLoadedStatus(){}
这与JAVA的
几乎相同@Override
protected void isLoaded() throws Error {}
要考虑的另一个选项是读取文档状态的IJavaScriptExecutor
功能。简单的代码:
public Boolean isPageLoaded(WebDriver driver)
{
return ((JavascriptExecutor)driver).executeScript("return document.readyState").equals("complete");
}