Jmeter问题重定向

时间:2015-06-22 19:08:22

标签: jmeter

您好我正在使用JMeter测试应用程序,但在尝试任何复杂的测试计划之前,我决定尝试一个简单的请求。

我的测试计划是这样的:

采样器 - > HTTP请求
名称:重定向测试
服务器名称或IP:localhost / sample
方法:GET
路径:redir.php

我的redir.php有这段代码<meta http-equiv="refresh" content="0;url=here.php">

我的here.php文件包含以下文字:HELLO, YOU HAVE BEEN REDIRECTED

之后,我创建了一个Response assertion来搜索“你好”这个词。

当我执行计划并检查View Results Tree监听器中的结果时,它说错误,因为找不到“HELLO”这个词。

此图显示我的HTTP请求配置

http://s7.postimg.org/k19tw7p0r/http_Request.png

这一个断言:

http://s4.postimg.org/4dg2sebfh/htpp.png

这是JMeter给我回复的错误

http://s8.postimg.org/dxbl00wv9/error_fdfdf.png

我一直在搜索,我在响应数据部分找到了这个:

http://s9.postimg.org/h49m8ippr/redirect.png

看起来Jmeter正在搜索响应中的字符串'HOLA'。

我感谢任何帮助

1 个答案:

答案 0 :(得分:1)

JMeter不是浏览器,因此不会解释包含以下内容的HTML页面:

  

&lt; meta http-equiv =“refresh”content =“0; url = here.php”/&gt;

因此断言失败,因为此页面不包含“Hello”。

因此,为了使您的示例工作,您需要从先前的响应“here.php”中提取,让JMeter调用它,然后在后一个响应中检查Hello字。

为此,请在第一个请求下添加Regular Expression Extractor并提取网址

然后添加一个Http请求来调用此URL并在那里添加断言。