каждый ключ должен быть числовой строкой; получил функцию

У меня есть этот сценарий в огурце:

Scenario Outline: Protractor and Cucumber Test InValid

    Given I have already......
    When I fill the <number>
    ....


    Examples:
| number|...
| 3 |...
|4  |...

И у меня есть это определение шага в файле .js:

 When('I fill the {int}',{timeout: 90 * 1000},  function(callback, number) {

        element(by.css("*[id='field_identificador']")).click();
        element(by.css("*[id='field_identificador']")).sendKeys(number).then(callback);

    });

Я получаю эту ошибку: каждый ключ должен быть числовой строкой; есть функция

Когда я выполняю тест, вводя значение самостоятельно без схемы сценария, например: .sendKeys('4'), он работает.

Я делаю что-то неправильно?


person Tester    schedule 25.06.2018    source источник


Ответы (1)


У вас аргументы в неправильном порядке. callback всегда является последним элементом в списке аргументов.

исправить:

When('I fill the {int}',{timeout: 90 * 1000},  function(number, callback) {

        element(by.css("*[id='field_identificador']")).click();
        element(by.css("*[id='field_identificador']")).sendKeys(number).then(callback);

    });
person Garrett Motzner    schedule 25.06.2018