代码之家  ›  专栏  ›  技术社区  ›  Tester

每个键必须是一个字符串;got函数

  •  0
  • Tester  · 技术社区  · 6 年前

    我在黄瓜中有这样的场景:

    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);
    
        });
    

    我得到这个错误: 每个键必须是一个字符串;got函数

    当我通过自己放置一个不带场景大纲的值来执行测试时,例如:.sendKeys('4')它可以工作。

    我做错什么了吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Garrett Motzner    6 年前

    你的论点顺序不对。 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);
    
        });