一個好用的測試工具 selenium
???近來要寫畢業論文,咨詢了一下自動化測試的同事,他建議我可以寫一下測試工具 Selenium ,這個工具具有非常多的優點:
???1. Selenium 使用靈活,簡單,寫出的測試用例非常簡潔,優美,易于維護。
???2. Selenium?RC 支持多種語言編寫測試用例。我熟悉 Java 語言,當時聽同事介紹這個工具的時候,就是被這點打動,才下決心學習 selenium ,寫畢業論文的。
???3. Selenium 有一個簡單的 seleniumIDE 工具,以插件的形式在 Firefox 中使用,可以錄制 web 操作,進行一些簡單重復的測試。
???學習了 3 個星期,對 selenium 有了一些了解,迫不及待的想把這個功能非常強大的測試工具介紹給大家。
???首先,從簡單的工具介紹。 Selenium?IDE 是 Firefox 的一個插件,是可以進行腳本錄制以及案例轉換, Selenium?IDE+Firebug 會成為寫測試用例的好幫手。
???Selenium?IDE 下載: http://seleniumhq.org/download/ ?
??? Firebug 下載: https://addons.mozilla.org/firefox/addon/1843 ?
一. Selenium?IDE
1. 安裝 Selenium?IDE , Firebug 。
2. 啟動 Selenium?IDE (如圖 1 ) :
圖 1
Selenium?IDE 啟動后,會出現如下圖 2 對話框:
圖 2
上圖標明了一些 Selenium?IDE? 的主要功能。其中,由 Command , Target , Value? 組成的表格就是腳本,每個腳本都是由一條一條的 Action( 行為 ) 組成,而每個 Action? 又由 (Command , Target , Value) 三者組成。
3. 錄制腳本
當彈出上面的 IDE? 窗口后,就可以開始 Selenium? 的腳本錄制了,右上角有個紅色的圓點,當它下按時 ( 如上圖 2 ) 就表示 IDE 正在進行腳本錄制。 OK ,開始錄制,錄制的時候,直接操作 Firefox? 瀏覽器窗口就可以了, IDE? 會自動記錄你的操作的,下面給出一個操作錄制腳本的例子:
圖 3
圖 4
上圖例子中,我的操作步驟如下:
1. 在地址欄輸入: http://www.google.com.hk
2. 登錄Google主頁,在搜索框輸入:selenium
3. 點擊“Google搜索”按鈕
4. 在搜索結果頁面,單擊第一條記錄
5. Firefox? 彈出一個新 Tab? 頁面,并進入了 selenium官網。
OK ,現在看看我們的 Selenium?IDE? 錄制的結果吧 (如圖 5 ) :?
圖 5
到這一步,腳本錄制成功。
二. Selenium?RC
???介紹一下怎么用 Selenium?RC 編寫測試用例。
???Selenium?RC 下載: http://seleniumhq.org/download/ ?? 解壓后文件夾里面的東東
圖 6
1. 啟動 selenium?server
??????? 打開上圖的 selenium-server-1.0.3 文件,在里面創建一個 run.bat 文件,輸入
“ java?-jar?selenium-server.jar ”保存(需要安裝好 JDK ) , 點擊運行 run.bat 這就啟動了 selenium 的測試服務器。如下圖所示:
????圖 7?
?????還有一種方法就是,打開 cmd 進入 selenium-remote-control-1.0.3 的目錄,輸入命令 “ java?-jarselenium-server.jar ” 。
2. 配置 selenium?client
???????還是以 java,eclipse? 為例子 來進行說明。
??????? 啟動 eclipse ,?創建一個 java 項目,比如名為 SeleniumTest 把 junit?4? 添加到這個項目的 library? 里面。? 選中此項目,點擊右鍵 Build?Path ->Add?Librar ies, 選擇 Junit,?Next,? 選擇 Junit?4? 點 finish . 在該項目 SeleniumTest 文件目錄 下面創建一個目錄叫 lib , 打開上圖 6 中的 selenium-java-client-driver-1.0.1 目錄 , 拷貝 selenium-java-client-driver.jar? 到剛才創建的 lib 目錄下 , 然后?把這個 jar? 也加到這個項目的 library 。 Project->properties->Java?Build?Path?->?Libraries 點? Add?JARs?, 選擇 selenium-java-client-driver.jar 所在的文件, 點 finish. 完成之后目錄結構如下 8 :
圖 8
3. 編寫測試腳本
?????? 在配置好的客戶端項目里,創建一個新的 Java?class 叫 ?TestGoogle? 好了 。我們可以利用前面介紹的工具 Selenium?IDE 錄制導出的 Java 腳本作為例子,稍稍修改:
import ?com.thoughtworks.selenium.*;
import ?junit.framework.TestCase;
public ? class ?TestGoogle? extends ?TestCase{
? ??? public ?Selenium? selenium ;
???? public ? void ?setUp()? throws ?Exception{
???????? selenium ?=? new ?DefaultSelenium( "localhost" ,4444, "*chrome" , "http://www.google.cn" );
???????? selenium .start();
}
???? public ? void ?testGoogle?()? throws ?Exception{????????
???????? selenium .open( "http://www.google.com.hk" );
???????? selenium .type( "q" ,? "selenium" );
???????? selenium .click( "btnG" );
???????? selenium .waitForPageToLoad( "30000" );
???????? assertEquals ( "selenium?-?Google?搜索" ,? selenium .getTitle());
????}
???? public ? void ?tearDown() throws ?Exception{
???????? if ( selenium != null ){
???????????? selenium .stop();
????????}
????}
}
選擇
?Run->Run?as?->Junit?Test
,你就會看到和執行
Selenium?IDE
一樣的效果了??梢?,我們用
Selenium?RC
可以調用
Java
的一切方法來為測試服務。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
