1

我是 jmeter 工具的新手。我想测试登录到一个 asp.net 网站。但是在网上搜索了2天后我没有成功。

我在下面列出了我遵循的步骤:

  1. 添加一个HTTP Request Defaults.
  2. 添加一个HTTP Cookie Manager.
  3. 和加两个Regular Expression ExtractorEVENTVALIDATIONVIEWSTATE
  4. 添加 HTTP URL 重写修饰符ASP.NET_SessionId(选中Path Extensionand Cache Session Id)。

    在此处输入图像描述

  5. 有两页,一是,Login Get Page一是Login POST Page。在登录帖子页面中,我添加了以下参数:

    • 用户名 :realUser
    • 密码 :realPassword
    • __VIEWSTATE:name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="(.+?)"

    在此处输入图像描述

    • __事件验证:name="__VIEWSTATE" id="__VIEWSTATE" value="(.+?)"

    在此处输入图像描述

    • 登录按钮:Log+In
  6. 添加一个View Results Tree.

我已经探索了以下链接,但没有成功。

电流输出:

电流输出

我错过了什么?
请有任何建议。

更新:

测试计划树结构:

测试计划树结构

登录详细信息: 在此处输入图像描述

登录请求选项卡: 在此处输入图像描述

4

2 回答 2

2

尝试使用 Jmeter 代理服务器进行录制:

然后添加您描述的所有元素以使所需的内容动态化,Http Url 重写修饰符除外。

于 2013-04-15T07:24:15.400 回答
1

我们在 jmeter 中获取登录页面时也遇到了此类问题。最终我们让它工作了。需要注意的是:

  • 您必须为登录页面创建两个 HTTP 请求采样器,第一个使用 GET 方法。这样视图状态就可以被正则表达式提取器捕获,然后是第二个使用 POST 方法进行登录的提取器。
  • 使用 firebug 或任何其他捕获工具来捕获登录页面的 Post,并确保添加所有发布值的控件。如果您忘记了一个参数,那么您的页面将会出错。我们还需要空的 ___VIEWSTATE 参数。请参阅我们的 Post 请求的屏幕截图
  • 对于某些页面,我们还必须添加带有空值的参数 __VIEWSTATEENCRYPTED

登录 http post 请求的屏幕截图

于 2014-01-28T11:06:53.523 回答