如何动态发布请求正文(xml)和验证响应(xml)?

时间:2018-10-22 20:27:05

标签: jmeter

是否可以动态发送XML请求并验证XML响应?

我的情况是: 我将有一个CSV数据集配置,并且在csv文件中将有两列,第一列用于inputXMLFilePath,第二列是期望的XMLResposneFilePath。

所以我需要在HTTP请求采样器下有一个JSR233预处理器,读取输入文件路径,将其转换为帖子主体,并且还需要另一个JSR233采样器,以从ExpectedXMLResponseFilePath加载预期的响应并将其与先前的XML响应进行比较。我有一个工作正常的JSON代码段。但是对于XML我该怎么做?

1 个答案:

答案 0 :(得分:1)

两种情况下都可以使用__FileToString()函数:

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

    JMeter Send Request Body From File

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

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

      JMeter FileToString in Assertion

您可以在Test Plan的任何位置上直接使用JMeter函数,因此它们的灵活性高于其他测试元素。而且,与Groovy脚本相比,JMeter函数也被编译为本机Java代码,因此它们的执行速度将更高,并且占用资源更少。

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