有没有办法衡量在selenium webdriver中从一个网页切换到另一个网页所需的时间?

时间:2015-09-24 01:12:07

标签: c# selenium-webdriver automated-tests

我有一个充满问题的网页,当用户点击“提交”按钮后,他们会回答下一页。有没有办法测量在selenium webdriver中加载下一页所需的时间?编程语言是c#。

2 个答案:

答案 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");
        }