2015-09-28 183 views
0

我想用jmeter銷燬我的會話。我使用以下代碼從我的註銷採樣器作爲後處理beanshell處理器:JMeter無法銷燬會話

import org.apache.jmeter.protocol.http.control.CookieManager; 
CookieManager cManager = sampler.getCookieManager(); 
for (int i=0;i<cManager.getCookieCount();i++){ 
    sampler.getCookieManager().remove(i); 
} 

但是,Cookie不會被破壞。 我在做什麼錯?

最好的問候, 彼得

+0

嗨,彼得,你檢查過這個嗎? http://stackoverflow.com/questions/12707635/how-to-clear-jsessionid-of-each-threaduser-in-jmeter-on-demand –

回答

0

爲什麼你想手動刪除會話?你想對被破壞的會話做些什麼?

+0

我想用不同的用戶測試應用程序 – Peter

+0

然後使用JMeter cookie管理器在你的腳本中。每個線程(用戶)都會有不同的會話,並且根本不需要任何編碼。爲了刪除所有的cookies,只需標記「清除每次迭代的cookie」。當然,如果你已經把cookie管理器放在正確的位置,看看是否所有的cookies都被刪除了,那麼檢查視圖樹監聽器。 – Imlus

0

任何不使用「每次迭代清除cookie」框的原因?

我也不太清楚它的刪除Cookie以正確的方式,我會去clear()方法,是這樣的:

CookieManager cManager = sampler.getCookieManager(); 
cManager.clear(); 
sampler.setCookieManager(cManager); 

而且cookie管理範圍內的事項,這取決於你想要什麼要實現它可能值得將HTTP Cookie管理器移到根測試計劃級別,反之亦然,讓每個HTTP請求採樣器都有其自己的Cookie管理器作爲其子級。有關更多詳細信息,請參閱Using the HTTP Cookie Manager指南。