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)
添加完成
-
運行測試計划
查看日志