首页 > 解决方案 > 量角器 - 如何检查一个类的所有实例都不存在于 DOM 中?

问题描述

我需要检查一个类的所有元素是否都不存在于 DOM 中。比如说,我希望该类的所有元素.loading都不存在于 DOM 中。我知道我可以这样做:

browser.wait(EC.stalenessOf($$('.loading')), 5000);

我的问题是这段代码是否会等待所有loading班级消失或只是第一个?如果它只等待第一个,我将如何使它适用于所有人?提前致谢 :)

标签: javascriptprotractorautomated-tests

解决方案


是的,这应该等到与定位器匹配的所有元素都不存在

但是对于将来,如果有疑问,您可以编写函数而不是使用ExtectedConditions库。在这种情况下,你可以做

let loading = $$('.loading');
await browser.wait(
  async () => (await loading.count()) === 0, 
  5000, 
  `message on failure`
);

事实上,这就是我用来处理多个加载动画的方法;-)


推荐阅读