如何使用 csv 为 Jmeter 中的不同输入断言提供不同的 json 值?

How to use csv to provide different values for json assertion for different inputs in Jmeter?

我对 API 测试比较陌生。

目前我有一个设置,其中我有不同的请求 jsons 并且对于每个请求 json 有不同的 repsonse json 断言配置提供了 Jmeter 中的适当值。

由于我的 json 结构相同,只有输入值不同,我正在考虑使用 csv 概括输入值并仅保留一个请求配置。

但是我能否使用 csv 为一个响应 json 断言配置提供不同的值(如 json 路径和预期值)?因为 json 路径和预期值都将取决于提供的输入,并且根据情况可能会有很大差异。

如果是,请告诉我怎么做。

此外,如果我可以使用其他免费的 API 测试工具(如 Postman)实现我的用例,那么也请告诉我。

您通常可以使用 CSV 数据集配置参数化任何 JMeter 测试元素

  1. 例如您有以下响应:

    { "name":"John" }
    
  2. 以及以下 CSV 文件:

    $.name,John
    $.name,Jane
    
  3. CSV Data Set Config 添加到您的测试计划并配置如下:

  4. 添加 JSON Assertion 作为上述 returns 请求的子项 JSON 并配置为:

  5. 就是这样,每个虚拟用户 and/or 迭代将从 CSV 文件中选取下一行,并且 ${jsonPath}${name} 占位符将替换为他们各自的价值:

    如您所见,第一个请求通过,因为名称匹配 John,第二个请求失败,因为断言预期名称为 Jane 并得到 John