如何在场景大纲示例(空手道框架)中放置一个值?

时间:2017-10-09 16:13:37

标签: karate

在我的专辑中,我有:

* def loc = responseHeaders['location'][10]
* def id = loc.substring(loc.lastIndexOf('/') + 1)

我想在场景大纲示例中使用id:

Scenario Outline: fkdfslqknfd
    Given url 'foo.com'
    And path <bar>
    When method get
    ......    
        Examples:
          |bar |
          |(id)|
          |"id"|
          |'id'|
          |id  |> The last example is ok.

但我没有收到'foo.com/13'(假设id为13),而是'foo.com/id'。我试过#,但它没有用。我怎么能取代这个id?我需要测试这个以String格式放入的id。感谢

2 个答案:

答案 0 :(得分:1)

这是Cucumber的一个已知限制,Examples不能是动态的。请参阅文档的最后一段:https://github.com/intuit/karate#the-karate-way

如果你真的试图循环一个具有不同值的特征,请再次参考上面的文档,如果你环顾四周,有很多例子。查看以call-开头的所有内容:https://github.com/intuit/karate/tree/master/karate-demo

答案 1 :(得分:0)

至少在JSON参数内,它对我有用

 Examples:
| request_body |
| {username: '#(email)', password: '#(password)'} |