量角器3.0.0和黄瓜自动化测试

protractor 3.0.0 and cucumber automated testing

本文关键字:自动化测试 黄瓜 量角器      更新时间:2023-09-26

我目前正在使用量角器,黄瓜和柴/柴-如承诺的那样进行自动测试。我当前的代码使用的是量角器 1.8.0,我想将其更新到最新版本。问题是最新版本的量角器不支持黄瓜。

要使用黄瓜作为框架,量角器 (http://angular.github.io/protractor/#/frameworks) 指向您使用量角器-黄瓜框架 (https://github.com/mattfritz/protractor-cucumber-framework)。我尝试将其与我当前的代码和一些较小的示例项目集成,但没有运气让它们工作。我得到的主要错误是:

错误:步进在 Timer.listOnTimeout 处 5000 毫秒后超时 (计时器.js:92:15)

我尝试全局更改默认超时,因为黄瓜建议 by://功能/支持/环境.js

var configure = function () {
  this.setDefaultTimeout(60 * 1000);
};
module.exports = configure;

但是我的设置似乎缺少一些东西。

那么,有谁知道一个很好的例子可以向我展示新量角器/黄瓜框架的正确设置?如果没有,有谁知道一个示例来显示如何全局更改默认超时?

你应该添加

this.setDefaultTimeout(60000);

到您的step_def文件之一。例如:

module.exports = function () {
    this.setDefaultTimeout(60000);
    this.After(function (callback) { ... } 
}

或者你应该添加//features/support/env.js

cucumberOpts:{require: ['//features/support/env.js']}

到包含步骤定义文件的数组

thx to @Ivan,与cucumber-protractor-frameworktypescript

在量角器中.js

cucumberOpts: {
    compiler: "ts:ts-node/register",
    require: [
      './src/env.ts', //<- added
      './src/**/*.steps.ts'
    ]
  },

在 src/env.ts 中:

import {setDefaultTimeout} from 'cucumber';
setDefaultTimeout(9001);