国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

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

2019-11-18 13:08:44
字體:
來源:轉載
供稿:網友

  您是否正在尋找一種把自動測試技術應用到 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 站點的功能進行驗證。
  
  清單 1 顯示了一個用 HttpUnit 編寫的測試用例,它試圖單擊 HttpUnit 主頁上的“Cookbook”鏈接:
  
  清單 1. 單擊 HttpUnit 主頁上 Cookbook 鏈接的 HttpUnit 代碼
  
  1 public class HttpUnitTest {
  2 public static void main(String[] args) {
  3  try {
  4   WebConversation wc = new WebConversation();
  5   WebRequest request =
      new GetMethodWebRequest("http://httpunit.
   sourceforge.net/index.Html");
  6   wc.set  7   WebResponse response = wc.getResponse(request);
  8   WebLink httpunitLink =
      response.getFirstMatchingLink(WebLink.
   MATCH_CONTAINED_TEXT,"Cookbook");
  9   response = httpunitLink.click();
  10   System.out.println("Test sUCcessful !!");
  11  } catch (Exception e) {
  12   System.err.println("Exception: " + e);
  13  }
  14 }
  15 }
  
  清單 1 中的代碼用 your.proxy.com (第 6 行)連接 Internet。假如存在直接 Internet 連接,那么可以把這個語句注釋掉。第 8 行的語句在頁面中搜索包含文本 Cookbook 的 Web 鏈接。第 9 行的語句用于單擊這個鏈接。假如找到鏈接,那么用戶會看到 Test Successful !這條消息。
  
  用 JWebUnit 進行的測試更簡單
  
  清單 2 的測試用例用 JWebUnit API 執行和清單 1 相同的任務:
  
  清單 2. 單擊 HttpUnit 主頁上 Cookbook 鏈接的 JWebUnit 代碼
  
  1 public class JWebUnitTest extends WeBTestCase{
  2 public static void main(String[] args){
  3  junit.textui.TestRunner.run(new TestSuite(JWebUnitTest.class));
  4 }
  5 public void setUp(){
  6  getTestContext().setBaseUrl("http://httpunit.sourceforge.net");
  7  getTestContext().setProxyName("webproxy.watson.ibm.com");
  8  getTestContext().setProxyPort(8080);
  9 }
  10 public void testSearch(){
  11  beginAt("/index.html");
  12  clickLinkWithText("Cookbook");
  13 }
  14 }
  
  假如沒注重清單 2 中特定于 JUnit 的代碼,那么您可以看到,測試用例現在變得相當整潔、簡練。需要查看的重要的行是第 6 行、第 11 行和第 12 行。
  
  在第 6 行,基本 URL 被設置到 HttpUnit 的主頁中。第 11 行用相對路徑 /index.html 連接站點。第 12 行用于單擊頁面上具有文本 Cookbook 的鏈接。假如鏈接有效,那么 JUnit 會報告成功;否則,JUnit 會報告異常。
  
  JWebUnit API:進一步觀察
  
  每個 JWebUnit 測試的核心都是 net.sourceforge.jwebunit.WebTestCase 類,它代表測試用例。每個測試用例都必須是從這個類擴展而來。(net.sourceforge.jwebunit.WebTestCase 類本身則是從 junit.framework.TestCase 類擴展而來的,它在 JUnit 中代表測試用例。) 表 1 描述了這個類的一些常用方法:
  
為Web應用程序創建測試用例的辦法一

  表 1. net.sourceforge.jwebunit.WebTestCase 類的重要方法

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浦江县| 合山市| 靖安县| 阿巴嘎旗| 隆回县| 绥芬河市| 岳普湖县| 定结县| 柏乡县| 太仆寺旗| 泰安市| 天等县| 社旗县| 将乐县| 朝阳市| 沙河市| 鹰潭市| 墨竹工卡县| 临漳县| 大姚县| 分宜县| 缙云县| 新邵县| 南澳县| 陆川县| 精河县| 南投县| 巴里| 平陆县| 广丰县| 盐边县| 山丹县| 马尔康县| 留坝县| 常宁市| 木里| 怀柔区| 白山市| 万年县| 彩票| 秦安县|