如何从CSV读取JSON请求的测试数据,而不是使用SET选项 [英] How to read test data from csv for JSON requests other than using set options
问题描述
我使用了空手道的SET特性,通过JSON表达式更改了键中的值。我主要使用它来根据测试场景更改请求内容。这使我能够避免从CSV文件中读取大量测试数据。然而,在某些情况下,我更喜欢使用CSV。
例如,我有大约230个测试场景作为POST请求,我有130个不同的客户信息,我需要根据上下文在230个测试用例上使用这些信息。客户信息包括名字、姓氏、年龄、地址等。但是,模式是相同的。如果我需要使用像groovy模板引擎这样的东西,在空手道中使用什么是最好的方法
在触发请求之前,我需要将这些数据保存在CSV中,读取它并将值传递给JSON模板。我仍然需要依赖CSV/外部来源,因为这些数据经常会过时,我需要经常更改它。您能分享一下您对此的看法吗?
推荐答案
使用与本例类似的方法(JDBC),您应该能够在不到一个小时的时间内编写一个CSV到JSON的转换器:
dogs.feature
IMO一旦您习惯了
table
或set
multiple语法,它就比csv-s好得多,因为它更具可读性。您可以使用call
并从仅包含数据的第二个功能文件加载数据。我个人建议使用JSON数组而不是CSV。有很多工具可以让您编辑JSON。空手道中的
read
JSON和用于data-driven testing的JSON是如此容易。您甚至可以组合set
或table
,查看以下内容以获得想法:dynamic-params.feature
我猜您知道JSON模板内置到空手道:embedded expressions-您应该看看这里广泛的测试用例示例:
js-arrays.feature
确保您通过了demo-examples。
这篇关于如何从CSV读取JSON请求的测试数据,而不是使用SET选项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!