使用Selenium進行驗收測試

發表于:2008-04-24來源:作者:點擊數: 標簽:seleniumSelenium驗收
使用Selenium進行 驗收測試 作者: 未知 來源: 網絡 轉載 概述 我們公司是沒有正規的 測試人員 的,對一個模塊而言,功能是否完成都是由 開發 人員 手工測試 。項目后期經常發生這樣的情況,開發人員更改一個BUG,自已測試表示通過,但是發到客戶那卻發現,BU


使用Selenium進行驗收測試


作者: 未知    來源: 網絡轉載


概述

        我們公司是沒有正規的測試人員的,對一個模塊而言,功能是否完成都是由開發人員手工測試。項目后期經常發生這樣的情況,開發人員更改一個BUG,自已測試表示通過,但是發到客戶那卻發現,BUG是改好了,以前正常工作的功能卻不能工作了。對一個模塊來講,更改一個部分的代碼,可能會造成連鎖反應,如果要保證不會造成其他功能不受影響,必須進行全面的測試,這在項目后期,頻繁更改BUG時,肯定是不現實的。 鑒于這種狀況,考慮將Selenium引入到項目中。

        Selenium是ThoughtWorks公司開發的一套基于WEB應用的驗收測試工具,直接運行在瀏覽器中,模擬客戶操作。

        Selenium抽象出一系列命令來模塊用戶操作,比如open命令表示打開一個URL,click命令表示點擊某個按鈕。Selenium實際上將這些命令轉化成實際的HTTP請求在瀏覽器中運行。

        具體支持哪些命令可以參見SpringSide的翻譯。

Selenium IDE

        Selenium IDE是基于FIREFOX瀏覽器的一個插件,提供GUI界面來運行Selenium測試。Selenium IDE提供腳本錄制功能,可以將用戶在瀏覽器中執行的操作記錄下來,生成各種形式的腳本,可以將這些腳本保存供以后使用。

        安裝Selenium IDE的步驟如下:

        *從www.openqa.org/selenium-ide/download.action下載Selenimu IDE(這是一個XPI后綴的文件)。
        *啟動FIREFOX瀏覽器,打開剛才下載的文件。
        *重啟FIREFOX瀏覽器,在工具菜條下應該就可以看到Selenium IDE菜單項

Selenium RC
        Selenium Remote Control是一個測試工具,允許使用任何語言編寫自動化的WEB UI測試用例。這個工具提供一個Selenium Server可以啟動,停止和控制任何瀏覽器,這個服務器使用AJAX直接和瀏覽器進行交互,可以使用HTTP GET/POST請求向Selenium Server發送命令。這意味著可以使用任何編程語言向Selenium Server發送HTTP請求來自動化Selenium測試。為了簡化這個過程Selenium提供各主流語言的包裝對象,對于JAVA來說,是DefaultSelenium類。

        雖然Selenium提供簡單的基于HTML TABLE的方式編寫測試,考慮到開發人員對JAVA代碼更熟悉一些,而且通過代碼編寫的測試,很容易通過ANT腳本和單元測試一起自動運行。下面的過程講述如何使用JAVA編寫Selenium測試。

下載
        從www.openqa.org/selenium-rc/download.action下載Selenium RC相關文件,假定解壓縮后的目錄為HOME

啟動服務器
        Selenium Server是用JAVA實現的,相應的庫文件在HOME/server/selenium-server.jar。運行如下代碼從命令行啟動:

java 代碼
java -jar selunium-server.jar  

        命令行中也可以提供一些選項設置,具體的選項設置參見www.openqa.org/selenium-rc/options.html。如果要進行自動化測試,可以在ANT腳本中啟動。

編寫測試用例
        要編寫Selenium測試用例,首先必須交HOME/java/selenium-java-client-driver.jar文件加載到類路徑中。然后編寫一個JUNIT的單元測試,要構建一個Selenium,包括如下步驟:

        *構建一個Selenium實例
        *啟動Selenium實例
        *執行Selenium命令,并驗證結果。要執行一個命令是通過調用Selenium實例的方法來完成的,具體有哪些命令可以參見JAVADOC
        *關閉Selenium實例

        如下是一個示例,用來測試

java 代碼
package com.thoughtworks.selenium;   
  
import
junit.framework.*;   
  
import org.openqa.selenium.server.*;   
  
public class GoogleTest extends TestCase   
{   
   private Selenium selenium;   
  
   public void setUp() throws Exception {   
        String url = "       selenium = new DefaultSelenium("localhost", SeleniumServer.getDefaultPort(), "*firefox", url);   
       selenium.start();   
    }   
      
   protected void tearDown() throws Exception {   
       selenium.stop();   
   }   
      
   public void testGoogleTestSearch() throws Throwable {   
        selenium.open("/intl/zh-CN/");   
        selenium.type("q", "selenium");   
        selenium.click("btnG");   
        selenium.waitForPageToLoad("30000");   
        assertTrue(selenium.isTextPresent("OpenQA: Selenium"));   
        checkForVerificationErrors();   
    }   
       
}   

結語
        此篇文章只是簡單的記錄了個人在研究Selenium的一個QuickStart的過程,供自己和同事以后參考。如果明白了Selenium的使用機制,具體的使用是非常簡單的,當然要達到自動化測試的目的,必須要求在ANT構建腳本中啟動Selenium服務器,這在花錢的年華的
博客中有描述,SpringSide就是一個很好的借鑒。

 

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97