【问题标题】:Jmeter: Issue with Response Data (HTML) and Is my script Functional?Jmeter:响应数据 (HTML) 问题和我的脚本是否正常运行?
【发布时间】:2018-03-09 20:02:35
【问题描述】:

我正在使用 Jmeter(2.3.2) 为我的一个应用程序创建脚本,该脚本的流程为 4 到 5 页。我已经使用 HTTP 代理服务器记录了脚本。已在线程组>>录制控制器下成功生成脚本。

运行脚本后(线程 - 1,加速周期 - 1,循环计数 - 1),以下是我在查看结果树中记录的观察结果:

  1. 结果树视图全部显示为选中(绿色)- 确定
  2. 所有屏幕的示例结果均显示错误计数为 0 - 正常
  3. 但在响应选项卡中,当我尝试使用“呈现 Html”响应数据查看结果时 - 响应数据显示所有请求的响应相同。

我正在获取所有其他请求的第一个请求的响应数据。

我不确定生成的 Jmeter 脚本是否正常运行?所有请求都获得相同响应数据的原因是什么?

拜托,谁能告诉我这可能是什么问题?

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    我敢打赌,您正在观察的同一页面是一种登录页面或仪表板,未经身份验证的用户可以访问。

    首先确保您已将HTTP Cookie Manager 添加到您的测试计划中。它代表浏览器 cookie 并处理用户会话和基于 cookie 的身份验证。

    如果它不能解决您的问题,那么问题就更大了,您需要做一些额外的事情。现代 Web 应用程序使用多种机制来存储和管理事物的当前状态、增强安全性等。从 JMeter 的角度来看,它会产生动态的强制参数。从前一个请求中提取这些动态参数并将它们添加到下一个请求的过程称为“相关”。所以你需要做到以下几点:

    1. 检测录制脚本发送的哪些参数是动态的。最简单的方法是多次记录相同的场景并检查请求主体以查看哪些是静态的,哪些是变化的。
    2. 一旦确定哪些参数是“有趣的”,您需要在第一个响应正文/标题/等中找到它们。
    3. 一旦您确定了必要的参数是什么以及它们所在的位置,您就需要使用 JMeter 的后处理器之一从先前的响应中提取所需的值并将它们保存到 JMeter 变量中
    4. 一旦有了 JMeter 变量,就可以在需要的地方使用它。

    根据响应数据类型,最常用的提供关联功能的 JMeter 后处理器是:

    因此,要将所有内容放在一起,请在您最喜欢的搜索引擎中查找“jmeter 相关性”或查看ASP.NET Login Testing with JMeter 指南。

    【讨论】:

    • 在我的脚本中包含了 HTTP Cookie 管理器和 HTTP 缓存管理器,它就像一个魅力。感谢您的投入 Dmitri T.
    【解决方案2】:

    第一个 JMeter 2.3.2 太旧了(10 岁),升级到 JMETER 2.11。

    其次,如果返回代码为 200,Jmeter 无法猜测 KO 的响应,因此您需要添加 Response Assertion 以检查页面中您期望的一些文本。

    【讨论】:

    • 想到我用的Jmeter版本太旧了,升级到Jmeter 2.11。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多