量角器:停止当前规格(然后继续其余规格)
Protractor: Stop current spec (and then continue with rest of specs)
我正在为一个站点设置自动化测试,我的一个规范依赖于之前通过的规范。第一个 spec 会在页面中保存一个预设配置,第二个 spec 会删除它。因此,如果第一个规范无法保存预设,我不希望第二个规范 运行(否则它可能会删除我想要的预设!)。
如果第二个规格没有运行,我想继续测试它之后的规格。但是,只需在第二个规范中放入一个保证失败的期望语句就可以让规范继续(这意味着删除一个预设)。我试过 fail-fast,但是失败时会完全退出测试,这不是我想要的。我还尝试使用 'done' 进行异步测试,但其功能与预期类似。
目前我通过尝试调用一个不存在的函数来解决这个问题。它仅失败当前规范,不继续当前规范,并开始测试下一个规范。但是我觉得应该有一个更干净的方法来解决这个问题。是否有任何内置的退出规范的方法?
这是我目前的第二个规格。 origPresets
是第一个规范中设置的全局变量:
it('should allow presets to be deleted', function() {
return MyPageObject.GetNumberOfPresets().then(function(numPresets) {
if (numPresets === origPresets) {
FailingThisSpec();
}
// rest of spec starts here
我认为 jasmine 2.x 中的 fail() 函数应该可以解决您的问题,如果我理解正确的话。
it('should allow presets to be deleted', function() {
return MyPageObject.GetNumberOfPresets().then(function(numPresets) {
if (numPresets === origPresets) {
fail("Can't delete");
}
// rest of spec starts here
我正在为一个站点设置自动化测试,我的一个规范依赖于之前通过的规范。第一个 spec 会在页面中保存一个预设配置,第二个 spec 会删除它。因此,如果第一个规范无法保存预设,我不希望第二个规范 运行(否则它可能会删除我想要的预设!)。
如果第二个规格没有运行,我想继续测试它之后的规格。但是,只需在第二个规范中放入一个保证失败的期望语句就可以让规范继续(这意味着删除一个预设)。我试过 fail-fast,但是失败时会完全退出测试,这不是我想要的。我还尝试使用 'done' 进行异步测试,但其功能与预期类似。
目前我通过尝试调用一个不存在的函数来解决这个问题。它仅失败当前规范,不继续当前规范,并开始测试下一个规范。但是我觉得应该有一个更干净的方法来解决这个问题。是否有任何内置的退出规范的方法?
这是我目前的第二个规格。 origPresets
是第一个规范中设置的全局变量:
it('should allow presets to be deleted', function() {
return MyPageObject.GetNumberOfPresets().then(function(numPresets) {
if (numPresets === origPresets) {
FailingThisSpec();
}
// rest of spec starts here
我认为 jasmine 2.x 中的 fail() 函数应该可以解决您的问题,如果我理解正确的话。
it('should allow presets to be deleted', function() {
return MyPageObject.GetNumberOfPresets().then(function(numPresets) {
if (numPresets === origPresets) {
fail("Can't delete");
}
// rest of spec starts here