我的测试中有以下代码导致了一些问题:
var array = []
for (var b = 0; b < ToAdd.length; b++) {
page.open(itemsToAdd[b])
page.load()
array.push(page.titleElement)
page.addToCartButton.click()
}
我期望的是array.push(page.titleElement)
在page.addToCartButton.click()
之前完成执行。
我如何实现这一点是JS?
问候。
答案 0 :(得分:1)
如果您正在等待所有推送完成,请将page.addToCartButton.click()放在for loo之外。否则代码应该没问题。
答案 1 :(得分:0)
webdriver.io是一个框架,只有当您可以看到该组件时,您可以选择它来单击或执行某些操作,否则,您无法对该组件执行操作。
更重要的是,在呈现DOMS之前,框架可能找不到它。
因此,您可以使用browser.pause(3000)
等待组件呈现。您也可以让下一步操作等待解决问题,我希望这对您有所帮助。