首页 > 解决方案 > 如何动态发布请求正文 (xml) 并验证响应 (xml)?

问题描述

有没有办法动态发送 XML 请求并验证 XML 响应?

我的场景是:我将有一个 CSV 数据集配置,并且在 csv 文件中我将有两列,第一列是 inputXMLFilePath,第二列是 expectedXMLResposneFilePath。

所以我需要在 HTTP 请求采样器下有一个 JSR233 PreProcessor,读取输入文件路径将其转换为帖子正文,并且还有另一个 JSR233 采样器用于从 expectedXMLResponseFilePath 加载预期响应并将其与之前的 XML 响应进行比较。我有一个运行良好的 JSON 片段。但是对于 XML 我该怎么做呢?

标签: jmeter

解决方案


您可以对这两个用例使用__FileToString()函数:

  1. 发送 XML 请求正文,例如${__FileToString(${inputXMLFilePath},,)}${inputXMLFilePath}CSV 数据集配置中的变量在哪里)

    JMeter 从文件发送请求正文

  2. 要使用Response Assertion验证响应,配置如下:

    • 测试领​​域:Text Response
    • 模式匹配规则:Equals
    • 要测试的模式:${__FileToString(${expectedXMLResponseFilePath},,)}

      断言中的 JMeter FileToString

您可以在测试计划的任何地方使用 JMeter 函数,因此它们的灵活性高于其他测试元素。JMeter 函数也被编译为本机 Java 代码,因此与 Groovy 脚本相比,它们的执行速度会更高,占用空间也会更少。

查看Apache JMeter Functions - 介绍文章,了解有关 JMeter Functions 概念的更多信息。


推荐阅读