在Jmeter中使用Selenium WebDriver完成測試
引子
以下內容選自《小強軟件測試瘋狂講義》一書
正文
首先不得不感嘆Jmeter的日漸強大,尤其是其插件。之前我們講解過,Jmeter可以完成性能測試、接口測試,而這次它居然可以依靠WebDriver來完成GUI的功能自動化測試了。
下面我們就以打開我的博客地址首頁為例進行講解,大致的實現步驟如下:
1) 下載JMeterPlugins-WebDriver-1.3.1.zip,解壓之後把lib目錄下的所有jar文件和lib/ext目錄下的JMeterPlugins-WebDriver.jar文件分別拷貝到本地Jmeter安裝目錄下的lib目錄中和lib/ext目錄中。
2) 進入本地Jmeter安裝目錄下的lib目錄中,把httpclient、httpcore、httpmime三個jar包較低版本的刪除掉,只保留較高版本的。
3) 啟動Jmeter,可以看到圖3.38中配置元件中新增了幾個Driver Config。
圖3.38 配置元件
4) [email protected] - Firefox Driver Config,配置如圖3.39所示。
圖3.39 [email protected] - Firefox Driver Config
5) [email protected] - WebDriver Sampler,編寫如下代碼:
//測試代碼開始,需要測試的業務放在start和end之間即可。
WDS.sampleResult.sampleStart()
try{
//打開博客首頁
WDS.browser.get(‘http://xqtesting.blog.51cto.com‘)
//測試代碼結束
WDS.sampleResult.sampleEnd()
}catch(x){
WDS.sampleResult.sampleEnd()
//設置為結果失敗
WDS.sampleResult.setSuccessful(false)
//返回信息設置為-_- sorry
WDS.sampleResult.setResponseMessage(‘-_- sorry‘)
}
6) 新建查看結果樹和用表格查看結果。
7) 運行Jmeter腳本,可以看到會自動調用火狐瀏覽器並模擬操作。最終運行結果如圖3.40所示。
圖3.40 運行結果
以上是最簡單的使用,算是一個嘗鮮吧,其中WebDriver Sampler中代碼編寫可以擴展,和你編寫WebDriver一樣,可以利用By.id,By.cssSelector等方法進行元素的定位並操作,類似如下代碼:
var pkg = JavaImporter(org.openqa.selenium)
WDS.browser.findElement(pkg.By.id(‘what‘)).sendKeys([‘xiaoqiang‘])
感興趣的朋友可以到官網查看詳細的示例代碼,地址:
http://jmeter-plugins.org/wiki/WebDriverSampler/。
本文出自 “小強性能自動化測試品牌” 博客,請務必保留此出處http://xqtesting.blog.51cto.com/4626073/1947396
在Jmeter中使用Selenium WebDriver完成測試