JMeter (1) —— JMeter與WebDriver安裝與測試(101 Tutorial)
主要內容
JMeter安裝
WebDriver安裝
一個簡單的JMeter+WebDriver示例
環境與參考
jvm版本: 1.8.0_65
jmeter版本: 2.13
firefox版本: 39.0.3
參考來源:
Leverage your Load Testing using JMeter and Selenium WebDriver
jmeter-plugins.org:FirefoxDriverConfig
jmeter-plugins.org:WebDriverTutorial
jmeter-plugins.org:WebDriverSampler
Using Selenium with JMeter's WebDriver Sampler
安裝
有brew的童鞋可以很方便的通過命令列安裝
$ brew install jmeter --with-plugins
然後執行
$ jmeter
沒有brew的童鞋可以自行下載然後通過java執行,關於外掛也需要自行手動下載安裝:
- Unzip jmeter bundle
- Unzip jmeter-plugins bundles
- Copy JMeterPlugins-WebDriver-1.3.1/lib/ext/JMeterPlugins-WebDriver.jar into jmeter/lib/ext
- Copy JMeterPlugins-Standard-1.3.1/lib/ext/JMeterPlugins-Standard.jar into jmeter/lib/ext
- Copy JMeterPlugins-WebDriver-1.3.1/lib/*.jar into jmeter/lib/
*注意:Webdriver依賴的jar和JMeter依賴的jar會有衝突,可能會導致以下錯誤:
我們需要移除:
- httpclient-4.2.6.jar
- httpcore-4.2.5.jar
- httpmime-4.2.6.jar
並保留較高版本
測試
準備
在測試之前我們需要先檢視firefox的版本,由於當前使用的最新版jmeter 2.13對firefox40+支援的還不是特別好,可能會出現錯誤,所以我將本地的firefox重新安裝了一個例項,版本為39.0.3。firefox 40+下對Selenium IDE 2.9.1 Addon支援的也不是很好,在錄製指令碼的時候會漏掉某些動作,在此不贅述,會在Selenium自動化測試中詳細介紹。
究其原因,主要是因為我們檢視jmeter2.13的release note其依賴的WebDriver plugin 1.3.1依賴的是selenium-firefox-driver-2.47.0.jar,而這個版本對firefox的支援可以在其github的release note上找到
如果本地firefox是40+的版本,我這裡使用的是43,可能會出現錯誤
一個簡單的示例
為測試計劃(Test Plan)新建一個執行緒組(Thread Group)
新增完成:
為執行緒組新增一個Firefox Driver配置
新增完成:
為執行緒組新增一個WebDriver Sampler配置
並加入以下指令碼:
WDS.sampleResult.sampleStart() try { WDS.browser.get('http://baidu.com') WDS.sampleResult.sampleEnd() } catch(ex) { WDS.sampleResult.sampleEnd() WDS.sampleResult.setSuccessful(false) WDS.sampleResult.setResponseMessage('Expected title to be Baidu') }
新增完成:
為執行緒組新增一個結果配置(View Results in Table)
新增完成
執行測試計劃
檢視日誌