量角器:如果一个方案失败,如何解决承诺并停止跳过方案

问题描述 投票:5回答:1

我有一个Protarctor-CucumberJS框架和一套测试方案。当我执行整个套件时,一个脚本在期望(ChaiJS)语句中失败。该特定步骤的步骤定义如下所示:

Then('I verify if valid success message received as {string}', function (successMessage) {
    expect($(.abc).getText()).to.eventually.equal(successMessage);
});

由于存在缺陷,应用程序未显示错误,元素:$(“。abc”)未显示在屏幕上,并且此功能在30秒钟的功能超时后失败。完整错误粘贴在下面。但是问题是,在跳过所有其他情况之后,都将显示相同的错误消息。

错误:函数超时,请确保在30000毫秒内解析承诺在Timeout._time.default.setTimeout [作为_onTimeout](C:\ bla \ bla \ node_modules \ cucumber \ lib \ user_code_runner.js:81:20)在ontimeout(timers.js:436:11)在tryOnTimeout(timers.js:300:5)在listOnTimeout(timers.js:263:5)在Timer.processTimers(timers.js:223:10)]

问题:

  1. 如果一个方案失败,如何避免跳过先前的方案?
  2. 如何在上述情况下兑现承诺。

我有一个Protarctor-CucumberJS框架和一套测试方案。当我执行整个套件时,一个脚本在期望(ChaiJS)语句中失败。该特定步骤的步骤定义...

javascript protractor cucumberjs
1个回答
1
投票

您是否可以使用async功能?如果是这样,您可以尝试使用条件来确定元素是否存在,如下所示:

© www.soinside.com 2019 - 2024. All rights reserved.