熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

為Web應用程序創建測試用例的辦法一

2013-11-15 11:39:21  來源: JSP教程 

  您是否正在尋找一種把自動測試技術應用到 Web 開發中的方法?那麼不用再找了!JWebUnit 就是為 Web 應用程序創建測試用例的一個開源框架它可以容易地插入到大多數 Java IDE 中通過使用一個示例應用程序描述了生成簡潔測試用例的詳細步驟軟件工程師 Amit Tuli 對 JWebUnit 進行了介紹
  
  自動測試可以節省重復執行相同測試步驟的時間和精力本文將介紹 jWebUnit這是一組 Java 類用於為 Web 應用程序開發測試用例jWebUnit 是一個開源項目可以在 BSD 許可下免費獲得我將介紹如何下載 JWebUnit 庫配置 Eclipse 平台來開發 jWebUnit 測試用例以及如何構建一個示例測試用例
  
  JWebUnit 簡介
  
  JWebUnit 以 HttpUnit(一個進行 Web 應用程序自動測試的 Java 庫)和 JUnit 單元測試框架為基礎(請參閱 參考資料)jWebUnit 提供了導航 Web 應用程序的高級 API並組合了一組斷言用它們來驗證鏈接導航表單輸入項和提交表格內容以及其他典型商務 Web 應用程序特性的正確性 jWebUnit 以 JAR 文件形式提供的可以很容易地將它插入大多數 IDE 中jWebUnit 也包含其他必要的庫
  
  用 HttpUnit 進行測試
  
  對 Web 應用程序自動進行測試意味著跳過 Web 浏覽器通過程序來處理 Web 站點首先我要介紹 HttpUnit(JWebUnit 的構建塊之一)是如何簡化這項工作的HttpUnit 可以模擬幀javascript頁面重定向 cookie等等在將 HttpUnit 用於 JUnit 時它可以迅速地對 Web 站點的功能進行驗證
  
  清單 顯示了一個用 HttpUnit 編寫的測試用例它試圖單擊 HttpUnit 主頁上的Cookbook鏈接
  
  清單 單擊 HttpUnit 主頁上 Cookbook 鏈接的 HttpUnit 代碼
  
   public class HttpUnitTest {
   public static void main(String[] args) {
    try {
     WebConversation wc = new WebConversation();
     WebRequest request =
      new GetMethodWebRequest(//);
     wcsetProxyServer( );
     WebResponse response = wcgetResponse(request);
     WebLink httpunitLink =
      responsegetFirstMatchingLink(WebLink
   MATCH_CONTAINED_TEXTCookbook);
     response = ();
     Systemoutprintln(Test successful !!);
    } catch (Exception e) {
     Systemerrprintln(Exception: + e);
    }
   }
   }
  
  清單 中的代碼用 (第 行)連接 Internet如果存在直接 Internet 連接那麼可以把這個語句注釋掉 行的語句在頁面中搜索包含文本 Cookbook 的 Web 鏈接 行的語句用於單擊這個鏈接如果找到鏈接那麼用戶會看到 Test Successful !這條消息
  
  用 JWebUnit 進行的測試更簡單
  
  清單 的測試用例用 JWebUnit API 執行和清單 相同的任務
  
  清單 單擊 HttpUnit 主頁上 Cookbook 鏈接的 JWebUnit 代碼
  
   public class JWebUnitTest extends WebTestCase{
   public static void main(String[] args){
    junittextuiTestRunnerrun(new TestSuite(JWebUnitTestclass));
   }
   public void setUp(){
    getTestContext()setBaseUrl();
    getTestContext()setProxyName(web);
    getTestContext()setProxyPort();
   }
   public void testSearch(){
    beginAt(/l);
    clickLinkWithText(Cookbook);
   }
   }
  
  如果沒注意清單 中特定於 JUnit 的代碼那麼您可以看到測試用例現在變得相當整潔簡練需要查看的重要的行是第 行和第
  
  在第 基本 URL 被設置到 HttpUnit 的主頁中 行用相對路徑 /l 連接站點 行用於單擊頁面上具有文本 Cookbook 的鏈接如果鏈接有效那麼 JUnit 會報告成功否則JUnit 會報告異常
  
  JWebUnit API進一步觀察
  
  每個 JWebUnit 測試的核心都是 netsourceforgejwebunitWebTestCase 類它代表測試用例每個測試用例都必須是從這個類擴展而來(netsourceforgejwebunitWebTestCase 類本身則是從 junitframeworkTestCase 類擴展而來的它在 JUnit 中代表測試用例) 表 描述了這個類的一些常用方法
  

  表 netsourceforgejwebunitWebTestCase 類的重要方法
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19381.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.