【问题标题】:Jmeter - Getting Error when recording in Thread GroupJmeter - 在线程组中记录时出错
【发布时间】:2019-04-27 02:32:38
【问题描述】:

我正在尝试记录 Https 请求。

当我在 HTTP(s) 测试脚本记录器下记录时,它会记录,我可以在查看结果树下看到请求/响应而没有错误。

当我尝试在 Thread Group 下记录相同的场景时,它给了我错误(应用程序引发了错误)。 应用程序错误 - 遇到错误 页面上出现错误。点击“返回”返回上一页或点击“首页”返回首页。

结构是:测试计划 -> 线程组 -> 记录控制器

在我的应用程序中,录制时它从登录页面(SSO 登录页面)开始 -> 主页 -> 搜索页面 -> 在此页面上,我搜索了一些内容并希望捕获其搜索响应时间。

我认为问题是 ViewState 和 EventValidation 没有通过?他们是我可以将其传递到页面的一种方式吗?

【问题讨论】:

    标签: jmeter jmeter-5.0


    【解决方案1】:

    相关性似乎有问题。您需要找到动态参数,例如 ViewState 和事件验证。

    1. 录制脚本并比较它们以使用任何嗅探工具(如 fiddler)检查动态参数。如果您已经知道,请忽略此步骤。

    2. 通常,您会在进行最终调用之前获得所需的参数。因此,您需要找到您在响应中获取所需参数的位置,并使用 PostProcessor 进行捕获。

    3. 然后,将捕获的参数传递到所需的请求中。

    EX;-下面是为了进一步澄清。对所有动态参数都遵循相同的方法。 测试计划

    --Request1-->PostProcessor(如 RegEx 或任何其他) 来捕获 viewState

    --Request2--将捕获的viewState值传递给这个请求。

    【讨论】:

    • 我使用 fidler 调试了 Web 应用程序。而且我发现有两个隐藏参数:ViewState 和 EventValidation。然后我为这两个参数使用了正则表达式提取器。但是在查看结果树的响应数据选项卡中,我遇到了错误。 “此页面的状态信息无效,可能已损坏。说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。”
    • 捕获后将其传递给所需的请求。每个页面的视图状态都有可能发生变化。因此,您可能需要在多个地方捕获并传递它。前任。 1 页--一个视图状态,第 2 页--第 2 个视图状态...因此,捕获第一个视图状态并传递给所有人将不起作用。因为,错误是针对状态的,所以最好的猜测是视图状态需要在多个位置关联。
    • PostProcessor -> CSS Selctor Extractor 帮助传递 Viewstate & Event Validation 的值
    猜你喜欢
    • 1970-01-01
    • 2021-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-19
    • 2019-04-21
    相关资源
    最近更新 更多