对于数据驱动功能,它不支持普通的数组循环,而不支持json数组吗?

时间:2019-06-14 10:34:30

标签: karate

我需要循环一个字符串(用','分隔),并自动将每个元素传递到特征文件。我知道对json数组数据驱动测试有很好的支持,但是它是否支持使用普通字符串或字符串数​​组进行数据驱动

据我所知,我需要将其转换为json数组以在运行时支持数据驱动的测试,但是,我想知道直接和自动存在的对常规数组循环的任何现有支持。

这是我的字符串(以“,”分隔),需要作为请求参数传递:

   "PHE,TSH,17_a_OHP,G6PD,MSMS,THALASSEMIA,DGT"

因为我的字符串是在运行时动态生成的,所以我想自动循环它并传递给其他功能文件,而不是手动传递,

1 个答案:

答案 0 :(得分:1)

请注意,converting arrays into other "shapes"在空手道中很容易。在0.9.3中,我们引入了karate.mapWithKey() API,因此您可以执行以下操作:

* def string = 'PHE,TSH,17_a_OHP,G6PD,MSMS,THALASSEMIA,DGT'
* def array = string.split(',')
* def list = karate.mapWithKey(array, 'name')
* print list

因此您可以看到list已准备好用于数据驱动功能。另外请注意,您可以在dynamic scenario outlines中使用它!