我需要编写一个自动化测试来计算屏幕响应的平均响应时间。我正在使用硒和 VB.net。请指导如何计算。因为 waitforpage() 只允许您指定等待的最长时间。我如何才能真正获得加载时间。
亲切的问候 Thx
我需要编写一个自动化测试来计算屏幕响应的平均响应时间。我正在使用硒和 VB.net。请指导如何计算。因为 waitforpage() 只允许您指定等待的最长时间。我如何才能真正获得加载时间。
亲切的问候 Thx
好吧,我将与您分享我使用但仅在 java 中使用的方法。希望你能以某种方式在 vb.net 上采用它。
public class CodeTimingMeasurement extends BaseSeleniumTest {
@Test
public void rmsHomeTiming() throws IOException, InterruptedException {
doLogout();
locatorFindingHandling("login.logininput", "login.admin.login");
locatorFindingHandling("login.passinput", "login.admin.pass");
long startTime = System.currentTimeMillis();
locatorFindingHandling("login.loginbutton");
loaderInficatorsDisappear("rms.loadingwindow");
fluentWait(By.cssSelector(propertyKeysLoader("rms.home.timeoffs.gearicon")));
fluentWait(By.cssSelector(propertyKeysLoader("rms.home.logout")));
fluentWait(By.cssSelector(propertyKeysLoader("home.timeoffs.own")));
long endTime = System.currentTimeMillis();
long totalTime = endTime - startTime;
System.out.println("Totaltime: " + totalTime + " milliseconds");
}
}
这个想法如下:您按下登录按钮或任何其他元素导致页面加载。然后你启动计时器。然后选择一组应该显示在页面上的元素。并使用 fluentWait 机制等到它们出现。然后应该停止计时器。
流利的等待信息 流利的等待方法代码:
public WebElement fluentWait(final By locator){
Wait<WebDriver> wait = new FluentWait<WebDriver>(driver)
.withTimeout(30, TimeUnit.SECONDS)
// .pollingEvery(5, TimeUnit.SECONDS)
.pollingEvery(1, TimeUnit.SECONDS)
.ignoring(NoSuchElementException.class);
WebElement foo = wait.until(
new Function<WebDriver, WebElement>() {
public WebElement apply(WebDriver driver) {
return driver.findElement(locator);
}
}
);
return foo; } ;
希望somthning对你来说很清楚)