是否真的有必要使用waitForElement
或等待...如果我测试由 ajax 状态加载的 javascript 单页应用程序?我必须在每个动作(例如:单击、键入)之前加上waitForElement
.
问问题
169 次
1 回答
1
是的,这对 Ajax 来说是必需的。但如果你使用“不要重复自己”的原则,这不是问题。您应该创建这样的方法:
clickWithExplicitWait(lctr) {
waitForElementPresent(lctr)//uses ajax wait timeout
driver.click(lctr)//uses implicit wait timeout
}
driver.click() 使用隐式等待。因此,您可以为隐式等待和显式“元素等待”指定不同的超时。您可以使用 org.openqa.selenium.support.ui.ExpectedConditions 包实现 waitForElementPresent() 或其他类似方法。
如果您需要在操作后等待另一个元素出现,请使用以下内容:
clickAndWait(lctrToClick, lctrToWait) {
driver.click(lctrToClick)
waitForElementPresent(lctrToWait)
}
于 2014-04-21T14:06:06.577 回答