2012-12-11 90 views
1

我在JMeter中有一個模擬Http請求的問題。Apache Jmeter忽略帖子主體

基本的任務是讓JMeter模擬firefox中的請求,然後用它作爲性能測試的基礎。 但是,我有問題讓JMeter包含post-header body。

使用fiddler,我記錄了firefox的請求,看起來像這樣。

POST http://*****:8001/XMLServlet?action=send HTTP/1.1 
Host: ***** 
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language: en-US,en;q=0.5 
Accept-Encoding: gzip, deflate 
Connection: keep-alive 
Referer: http://*****:8001/XMLServlet 
Cookie: JSESSIONID=YpvCQGvFWshb6yyNsZvWZzHLLknNMpXRJ36vR7p0jxSp41Q3zlbj!-409403047 
Content-Type: multipart/form-data; boundary=---------------------------491299511942 
Content-Length: 3125 
-----------------------------491299511942 
Content-Disposition: form-data; name="find"; filename="2010100010427.XML" 
Content-Type: text/xml 
<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE DDT PUBLIC "*****" "*****"> 
<Some XML file/> 
-----------------------------491299511942 
Content-Disposition: form-data; name="submit" 

Send 
-----------------------------491299511942-- 

我在JMeter中發出了一個可以正常工作的登錄請求,但實際的帖子並沒有像預期的那樣工作。

我現在用的是「發送文件,要求」選項,發送文件,我選擇了POST方法,並在帖子正文(原始)我已經添加

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language: en-US,en;q=0.5 
Accept-Encoding: gzip, deflate 
Host: ***** 
Connection: keep-alive 
Referer: http://*****:8001/XMLServlet 

我希望這是包含在最終的請求,但是當我執行後小提琴手看提琴手,這是結果:

POST http://*****:8001/XMLServlet?action=send HTTP/1.1 
Connection: keep-alive 
Cookie: JSESSIONID=LdyTQGsGzg0bSvbTKhF3grPhBYTKnY2TJ3CzLdB3Fwp8K7r2z2zN!-409403047 
Content-Length: 2034 
Content-Type: multipart/form-data; boundary=_bm2tmf-3Nv071ZvyhFKaWOc4RixWE_dNyLk 
Host: *****:8001 
Connection: Keep-Alive 
User-Agent: Apache-HttpClient/4.2.1 (java 1.5) 

--_bm2tmf-3Nv071ZvyhFKaWOc4RixWE_dNyLk 
Content-Disposition: form-data; name="find"; filename="2010100000484.XML" 
Content-Type: text/xml 
Content-Transfer-Encoding: binary 

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE DDT PUBLIC "*****" "http://*****/sad.dtd"> 
<Some XML file/> 

--_bm2tmf-3Nv071ZvyhFKaWOc4RixWE_dNyLk-- 

爲什麼JMeter的無視帖子正文?更重要的是:我如何解決它?

+1

您可以使用jmeter代理記錄場景並將結果與​​您當前的採樣器進行比較。 – rsp

回答

4

您添加到POST正文中的是HTTP標頭,而不是正文。標題不能在HTTP請求採樣器中設置。要發送它們,您應該添加HTTP Header Manager所有這些標題。

+0

一旦有人指出,這是完全合理的。非常感謝你 –