黄瓜JS样本无法在我的本地系统中运行

时间:2016-06-01 14:55:59

标签: cucumberjs

我正在尝试在我的本地Windows系统中执行cucumber-js示例程序http://cucumber.github.io/cucumber-js/

节点版本0.10.26 npm版本1.4.3

文件夹结构

  

../ node_modules   ../test/features/support/world.js   ../test/features/new_math.js   ../测试/特征/ step_definitions / demonstrationSteps.js

//steps code
module.exports = function () {
this.World = require("../support/world").World;

this.Given(/^a variable set to (\d+)$/, function(number) {
  this.setTo(number);
});

this.When(/^I increment the variable by (\d+)$/, function(number) {
  this.incrementBy(number);
});

this.Then(/^the variable should contain (\d+)$/, function(number) {
  if (this.variable != parseInt(number))
    throw new Error('Variable should contain ' + number +
      ' but it contains ' + this.variable + '.');
});
};

世界档案:

var CustomWorld = function() {};

CustomWorld.prototype.variable = 0;

CustomWorld.prototype.setTo = function(number) {
  this.variable = parseInt(number);
};

CustomWorld.prototype.incrementBy = function(number) {
  this.variable += parseInt(number);
};

module.exports.World = CustomWorld;

功能文件:

Feature: Simple maths
  In order to do maths
  As a developer
  I want to increment variables

  Scenario: easy maths
    Given a variable set to 1
    When I increment the variable by 1
    Then the variable should contain 2

  Scenario Outline: much more complex stuff
    Given a variable set to <var>
    When I increment the variable by <increment>
    Then the variable should contain <result>

    Examples:
      | var | increment | result |
      | 100 |         5 |    105 |
      |  99 |      1234 |   1333 |
      |  12 |         5 |     18 |

当我执行命令&#34; cucumber-js /test/features/new_math.feature"以下是我在命令提示符下输出的输出。

Feature: Simple maths
  In order to do maths
  As a developer
  I want to increment variables

1 个答案:

答案 0 :(得分:0)

我发现了一个解决方法,我配置了我的package.json来触发脚本

  "scripts": {
    "test": "cucumber-js test/features/demonstration.feature"
  },

所以当我使用命令“npm test”时。这些功能正在执行中。