2016-07-31 82 views
6

作爲在Jmeter一個初學者,遇到了需要運行一個簡單的流程:使用webdriver採樣的JMeter無法處理Cookie的HTTPS

  • 要登錄web應用程序
  • 爲了得到&存儲cookies
  • 在網絡應用內製作GET/POST請求(例如,導航到任何內頁)

測試成功運行HTTP://,但HTTPS失敗與404的HTTP請求步驟://(兩個不同的站點)

政府採取什麼措施來解決:

1 Cookie管理是加入到線程組,置於前取樣

2. jmeter.properties更改爲:

CookieManager.allow_variable_cookies=true 
CookieManager.save.cookies=true 
CookieManager.check.cookies=false 

因此,改變保存cookies來真正後,我期望看到保存在Debug Sampler > JmeterVariables所有Cookie,但我不(無論是HTTP://https://開頭

3.正則表達式提取(上面放置HTTP取樣器)用作:

Reference Name: COOKIE_EXT 
Regular expression: SSESSee2ec8d6b6eedd096cb782a386b4e5c3=(.*) 
Template: $1$ 
Match No.: 1 
Use empty default value 

在GET請求把爲:

name: cookie_ext 
value: ${COOKIE_EXT} 

結果:

Response in Debug Sampler: COOKIE_EXT= 
Request data: GET ?cookie_ext= 
[no cookies] 

4.試圖找到任何附加的JMeter設置爲HTTPS(例如TSL/SSL協議)。似乎沒有任何要求,除了在HTTP採樣器模板中指定「https」。在HTTP Cookie管理器中使用Implementaion & Cookie策略,但沒有效果。

可能是什麼原因?

(3.0的JMeter,谷歌Chrome 51.0,Drupal的7.43)

+0

你能告訴你的測試計劃? –

+0

我認爲你的正則表達式存在問題。您確定「SSESSee2ec8d6b6eedd096cb782a386b4e5c3」的值在用戶和迭代之間不會改變嗎? –

回答

0

我還沒有看到與處理Cookie的任何問題和HTTPS協議,也許你已經配置錯誤的東西。

HTTPS and Cookies

記住幾件事情:

  • 任何性質的變化應該在user.properties文件進行
  • 您需要重新啓動JMeter的挑性高達
  • 鑑於你有CookieManager.save.cookies=true您正在將Cookie存儲到JMeter變量已經中,因此不需要使用正則表達式。此外,如果您的正則表達式錯誤(對我來說看起來很奇怪),您可能會使用正則表達式提取器中的「錯誤」值從HTTP Cookie管理器覆蓋「好」cookie。

Using the HTTP Cookie Manager in JMeter指南在JMeter的

與cookies的更多信息