• 軟件測試技術
  • 軟件測試博客
  • 軟件測試視頻
  • 開源軟件測試技術
  • 軟件測試論壇
  • 軟件測試沙龍
  • 軟件測試資料下載
  • 軟件測試雜志
  • 軟件測試人才招聘
    暫時沒有公告

字號: | 推薦給好友 上一篇 | 下一篇

使用jwebunit編寫頁面級自動化測試用例

發布: 2011-2-08 11:54 | 作者: 網絡轉載 | 來源: 領測軟件測試網采編 | 查看: 107次 | 進入軟件測試論壇討論

領測軟件測試網

  jWebUnit簡介

  jWebUnit是以HttpUnitJUnit 單元測試框架為基礎,用于為Web應用程序開發測試用例,對 Web應用程序自動進行測試意味著跳過Web瀏覽器,通過程序來處理Web站點。jWebUnit提供了導航Web應用程序的高級API,并組合了一組斷言,用它們來驗證url、頁面文本、按鈕、表單項、cookie等頁面元素?梢院唵慰旖莸膶崿F頁面級自動化測試用例。

  與automan框架比較的優缺點

  優點1. 編碼簡單,API直觀。在eclipse里編寫簡單的語句調用API,可以實現基本的頁面操作。

  優點2. 運行速度快。由于是程序模擬瀏覽器進行運行,相比automan框架真實進行瀏覽器操作來說,用例執行的速度相當快?煽焖龠M行回歸測試。

  優點3. 基于java,易于擴展兼容。

  缺點1. 對部分頁面js無法支持

  缺點2. 瀏覽器無法支持支付寶控件,在需要控件的頁面無法進行用例編寫

  下載 jWebUnit,在Eclipse中配置jWebUnit

  1. 把下載的文件jwebunit-2.5-release.zip釋放到任意目錄中(假設是d:\temp)直接下載或訪問jwebunit網站

  2. 在 Eclipse 中創建新 Java 項目,將其命名為TaobaoJWebUnit。

  3. 右擊 Package Explorer 視圖中的TaobaoJWebUnit項目,然后選Properties。

  4. 單擊Java Build Path。單擊Libraries 標簽中的 Add External JARs。

  5. 瀏覽到 d:\temp\jwebunit-2.5\lib 目錄,選擇這個目錄中的所有 JAR 文件。

  6. 單擊 OK。

  現在可以編寫測試用例。以下舉例說明驗證登錄功能的一個簡單用例

  1. 新建LoginTest.class

  2. 編碼如下

  public class LoginTest extends WebTestCase{

  public void testlogin(){

  this.beginAt(“此處應該為測試環境的登錄url,以防泄密,所以不寫在這里”);

  this.setTextField(“TPL_username”, “wtx0000″);

  this.setTextField(“TPL_password”,”testpw”);

  this.clickButtonWithText(“登錄”);

  this.assertLinkPresentWithText(“退出”);

  3. 右鍵——run as ——Junit Test

  4. 查看運行結果

  代碼解析:

  1.從代碼我們可以看出,jwebunit提供的API非常直觀。通常情況下,我們可以通過html控件的name或者id來定位。除此之外,還可以通過xpath語法對控件進行定位,xpath語法是一種非常簡單的語法。

  2.不支持https

  以下是jwebunit核心類的幾個重要方法

  每個 jWebUnit 測試的核心都是 net.sourceforge.jwebunit.WebTestCase 類,它代表測試用例。每個測試用例都必須是從這個類擴展而來。(net.sourceforge.jwebunit.WebTestCase 類本身則是從 junit.framework.TestCase 類擴展而來的,它在 JUnit 中代表測試用例。)

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

  public TestContext getTestContext() 得到測試用例的上下文?梢杂盟L問像地區、基本 URL 和 cookie 之類的項目

  public void beginAt(String relativeURL) 在相對于基本 URL 的 URL 處開始對話

  public void setWorkingForm(String nameOrId) 與指定的表單開始交互。如果當前頁面只有一個表單,就不需要調用這個方法

  protected void submit() 提交表單 —— 等同于單擊表單的 提交 按鈕

  public void gotoFrame(String frameName) 激活命名幀

  另一個重要的類是 net.sourceforge.jwebunit.TestContext。它為測試創建上下文?梢杂眠@個類來處理像 cookie、會話和授權之類的信息。

  net.sourceforge.jwebunit.TestContext 類的重要方法

  public void addCookie(String name, String value) 向測試上下文中添加 cookie。在 HttpUnitDialog 開始時,添加的 cookie 被設置到 WebConversation 上

  public void setResourceBundleName(String name) 為測試上下文設置一個使用的資源綁定。用于按照 WebTester 中的鍵查找期望的值

  public void setProxyName(String proxyName) 為測試上下文設置代理服務器名稱

  public void setBaseUrl(String url) 為測試上下文設置基本 URL

延伸閱讀

文章來源于領測軟件測試網 http://www.anti-gravitydesign.com/


關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

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