HTTP POST 登录表单请求在 Jmeter 中不起作用

HTTP POST Request to a login form doesnt work in Jmeter

我有一个登录表单,其表单方法设置为 POST,表单操作设置为 servlet,以及用于检查字段的 OnSubmit 函数 data.I 想要对文件下载进行性能测试此登录表单背后的功能。为了实现这一点,我是 运行 一个并行采样器,可以登录然后下载文件。

第一个采样器用于登录,第二个采样器用于下载文件。

在第一个采样器中,我想 POST 使用 JMeter 的 HTTP Reqest 采样器在此表单上获取数据。 我检查了表单并创建了一个包含三个参数的采样器,用户名、密码和一个不可公开的字段。我已经设置了 servlet 的路径,因为它是处理表单请求的路径。 post 请求在这种情况下不执行任何操作。

我应该做什么或检查或修改以确保POST请求到达正确的端点并且它确实提交了表单数据。

您需要顺序采样器,我认为如果您尝试在未事先登录的情况下下载文件 - 请求将以某种方式失败。

如果这还不够,并且您想添加额外级别的检查,即测试端点 returns 预期的响应代码或具有特定文本,您可以添加 Response Assertion 作为 child 并在那里添加 pass/fail 标准。

如果您不知道如何正确构建登录和下载请求,最简单的方法就是使用 HTTP(S) Test Script Recorder, JMeter will capture the requests and generate relevant HTTP Request samplers and HTTP Header Managers

记录它们