量角器 - 如何检查 class 的所有实例是否不存在于 DOM 中?

Protractor - how to check that all instance of a class is not present in the DOM?

我需要检查 class 的所有元素是否都没有出现在 DOM 中。比如说,我希望 class .loading 中的所有元素都不出现在 DOM 中。我知道我可以做到:

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

我的问题是这段代码是要等待所有 loading class 消失还是只等待第一个消失?如果它只等待第一个,我将如何让它对所有的人都有效?提前致谢:)

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

但为了将来,当有疑问时,您可以编写您的函数而不是使用 ExtectedConditions 库。在这种情况下,你可以做

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

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