Protractor Cucumber.js、量角器、Javascript示例和场景大纲

Protractor Cucumber.js、量角器、Javascript示例和场景大纲,protractor,cucumberjs,Protractor,Cucumberjs,我正在学习Cumber.js、量角器、bdd等。 我不知道如何在cucumber.js和dragotor中使用“场景大纲” 我的功能文件中有以下内容 场景大纲:无效登录 当我输入无效 我进入无效状态 然后我按下登录按钮 然后我会看到一条错误消息 示例: |用户通行证| |abc|def| |bcd | efg |场景大纲值作为参数传递给步骤定义。步骤定义应如下所示: this.When(/^I enter "([^"]*)" as invalid username$/, function (

我正在学习Cumber.js、量角器、bdd等。 我不知道如何在cucumber.js和dragotor中使用“场景大纲”

  • 我的功能文件中有以下内容
  • 场景大纲:无效登录
    当我输入无效
    我进入无效状态
    然后我按下登录按钮
    然后我会看到一条错误消息
    示例:
    |用户通行证|
    |abc|def|
    
    |bcd | efg |
    场景大纲值作为参数传递给步骤定义。步骤定义应如下所示:

     this.When(/^I enter "([^"]*)" as invalid username$/, function (user, callback) {
        var userNameElement = element(by.id('username'));
        userNameElement.sendKeys(user);
        callback();
    });
    
    this.When(/^I enter "([^"]*)" as invalid password$/', function (pwd, callback) {
        var passwordElement = element(by.id('password'));
        passwordElement.sendKeys(pwd);
        callback();
    
    });
    

    在标准javascript中使用cucumberjs参数表(使用括号)的正确语法如下:

    Scenario Outline: Joe Given I enter "<goat>" as invalid username
    Examples:  
    | goat | 
    | goe | 
    | bill | 
    | bish |
    
    -------结果----


    您也可以不带括号地使用它。

    您好,我也有同样的问题,但我已经按照您所说的做了,它给出了一个错误:
    const assert = require('assert');
    const { Given, When, Then } = require('cucumber');
    
    
    // https://docs.cucumber.io/gherkin/reference/#scenario-outline
    // https://stackoverflow.com/questions/47571808/cucumber-js-protractor-javascript-example-with-scenario-outlines
    When(/^I enter "(.*)" as invalid username$/, function ( goat ) {
      console.log("display Parameter passed : " + goat );
    });
    
    ./node_modules/.bin/cucumber-js
    display Parameter passed : goe
    .display Parameter passed : bill
    .display Parameter passed : bish
    .display Parameter passed : hey
    .display Parameter passed : joe
    .
    
    6 scenarios (6 passed)
    5 steps (5 passed)
    0m00.015s