如何将表格值包含在URI中?

时间:2018-11-07 21:57:03

标签: karate

我正在尝试使用Karate 0.9.0.RC4将表的值添加为URI的一部分,并且似乎没有继承该值。下面的示例是我尝试在继承的特征文件中打印出通过的表的值的测试:

测试功能文件

Scenario: Data Table Test
* table kittens
    | name       | age |
    | 'Bob'      | 2   |
    | 'Wild'     | 1   |
    | 'Nyan'     | 3   |
    | 'Keyboard' | 5   |
    | 'LOL'      | 3   |
    | 'Ceiling'  | 2   |

* def result = call read('comments-call.feature') kittens

Comments-Call.feature

@ignore
Feature: re-usable feature to create a single cat

Scenario:
* match __arg == kittens[__loop]

* print '#(name)'

在日志中,我看到以下内容:

14:30:55.714 [main] INFO  com.intuit.karate - found scenario at line: 
45 - ^Data Table Test$
14:30:55.879 [main] INFO  com.intuit.karate - [print] #(name)
14:30:55.902 [main] INFO  com.intuit.karate - [print] #(name)
14:30:55.929 [main] INFO  com.intuit.karate - [print] #(name)
14:30:55.947 [main] INFO  com.intuit.karate - [print] #(name)
14:30:55.961 [main] INFO  com.intuit.karate - [print] #(name)
14:30:55.971 [main] INFO  com.intuit.karate - [print] #(name)Karate 
version: 0.9.0.RC4

我基于示例Data Driven Tests

1 个答案:

答案 0 :(得分:2)

只需2分。空手道默认是纯JavaScript。因此,如果您的范围内有变量name,则可以使用该功能!

* print name

并且请仔细阅读嵌入式表达式的规则。 #(foo)系统旨在仅用于JSON和XML中的模板。

https://github.com/intuit/karate#rules-for-embedded-expressions