Protractor 如果BEFOREAL失败,则无法通过量角器文件中的所有测试

Protractor 如果BEFOREAL失败,则无法通过量角器文件中的所有测试,protractor,Protractor,我使用以下beforeAll代码进行了量角器测试: beforeAll(async (done: Function) => { await browser.restart(); await browser.waitForAngularEnabled(false); await performLogin('/some_url', LOGIN_EMAIL, LOGIN_PASSWORD); await browser.waitForAngularEnabled(true);

我使用以下beforeAll代码进行了量角器测试:

beforeAll(async (done: Function) => {
  await browser.restart();
  await browser.waitForAngularEnabled(false);
  await performLogin('/some_url', LOGIN_EMAIL, LOGIN_PASSWORD);
  await browser.waitForAngularEnabled(true);
  done();
});
登录页面是Microsoft Azure Ad,它没有角度,因此需要禁用waitForAngular

有时,我正在解决的一个问题失败了。但是,当它失败时,所有测试都会运行,当然会超时,因为它们最终会出现在登录屏幕上

有什么我可以事先打电话告诉你的吗?这里的每个场景都失败了吗?

有一个量角器fail fast,你可以找到它。它基本上在第一次失败时退出,而不是尝试运行所有测试

然后,针对您的特定情况的一个解决方案是,在您的结束之前运行一个验证,以确认URL是否超过登录页面,类似于:

expectbrowser.getCurrentUrl.not.toContain'microsoft.com/login'

如果失败了,量角器就会从那里退出


总的来说,鉴于Jasmine现在支持它,您不是第一个使用和使用量角器的开发者,但问题似乎没有多大进展。

您的意思是,如果之前失败,不要运行“it”块吗?@vin是的,这就是我的意思