我正在使用Selenium为Web应用程序执行UI自动化。
1)我的疑问是
当我使用click()
方法时,right_btn.click()
是否只是单击right_btn
并显示出来,还是只是等待基本操作完成才移出?
我读过这个
当我用Google搜索WebElement.click()
http://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/WebElement.html时,它说像,只要click()
涉及打开新页面,它就会被阻止,但在这里它不会打开新页面,而是涉及服务调用。
2)我实际上想知道什么?
我想知道这实际上是为了计算在UI中执行每个动作所涉及的延迟。有什么方法可以计算每个UI操作的延迟,就像我们在inspect element
中使用chrome
时看到的延迟时间一样。提前致谢。
最佳答案
在Java中,您可以在Date a = new date()
之前的当前时间创建一个right_btn.click()
对象,然后等待结果页面打开(如果在新的选项卡/窗口中-切换到它),然后找到一些元素在该页面上
WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement element = wait.until(
ExpectedConditions.visibilityOfElementLocated(By.id("someid")));
之后返回该元素,再创建一个
Date b = new Date()
等待时间是以毫秒为单位的差异
int millis = b-a;
是的,在总时间中只有一小部分是Selenium搜索第二个元素,但是恐怕这可能是您可以为达到目的而使用java / selenium最好的方法。