gpt4 book ai didi

Jasmine /Protractor : stop test on failure in beforeEach

转载 作者:行者123 更新时间:2023-12-04 04:25:37 24 4
gpt4 key购买 nike

我当前正在编写测试 Protractor ,我想知道是否有可能在beforeEach中的某些操作失败后取消测试执行(并返回一些有用的消息,例如“前提条件失败:无法登录用户”)。
IE。在beforeEach中,我有一些帮助程序方法可以登录用户,然后进行一些设置。

beforeEach:
1) login user
2) set some user properties

显然,如果第一步失败,则执行第二步没有任何意义(实际上,这很有害,因为用户被锁定,这很不好)。我尝试在第一步中添加一个“期望”,但是第二步仍在执行->崭新的想法。

最佳答案

严格回答您的问题,并且没有外部依赖项:

beforeEach(function() {
// 1) login user
expect(1).toBe(1);
// This works on Jasmine 1.3.1
if (this.results_.failedCount > 0) {
// Hack: Quit by filtering upcoming tests
this.env.specFilter = function(spec) {
return false;
};
} else {
// 2) set some user properties
expect(2).toBe(2);
}
});

it('does your thing (always runs, even on prior failure)', function() {
// Below conditional only necessary in this first it() block
if (this.results_.failedCount === 0) {
expect(3).toBe(3);
}
});

it('does more things (does not run on prior failure)', function() {
expect(4).toBe(4);
});

因此,如果 1 失败,则 2,3,4,N 将不会按预期运行。

也有 jasmine-bail-fast,但我不确定每种情况下它在您的情况下的表现。

关于 Jasmine /Protractor : stop test on failure in beforeEach,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23137793/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com