有没有办法让 Jasmine 的期望在失败时重试

Is there a way to make Jasmine's expects do retry on fail

有没有办法让 Jasmine 的期望在期望失败时重试。

例如,我检查了一些在一段时间内可能为假的结果: expect(await driver.findElement(By.css('.element-not-appears-instantly')).isPresent()).toBe(true) 并且我希望它重新预期它是否会因某些超时而出现错误,并且最终超时将完成重试并且 return 当前结果。 像这样:

reExpect(await driver.findElement(By.css('.element-not-appears-instantly')).isPresent(), timeoutInMilliseconds).toBe(true)

是否有可能以某种方式扩展函数 expect 或在抛出时抑制 expect。当我试图赶上 expect 时,它总是打印失败。

可能还有其他测试框架可以做到这一点。我的意思是测试像 jasmine mocha 等框架,而不是像 webdriver io 等 selenium 包装器。

我可以只使用标准库中的断言模块,然后做任何我想做的事情。