您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > HttpUnit
應(yīng)用HttpUnit進(jìn)行Web測試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/4/8 16:05:52 ] 推薦標(biāo)簽:

  5、如何使用httpunit進(jìn)行測試

  5.1 對頁面內(nèi)容進(jìn)行測試

  httpunit中的這部分測試完全采用了JUnit的測試方法,即直接將你期望的結(jié)果和頁面中的輸出內(nèi)容進(jìn)行比較。

  比如你期望中的頁面顯示是中有一個表格,它是頁面中的第一個表格,而且他的第一行第一列的數(shù)據(jù)應(yīng)該是顯示username,那么你可以使用下面的代碼進(jìn)行自動化測試:

  // 建立一個WebConversation實例

  WebConversation wc = new WebConversation();

  // 獲取響應(yīng)對象

  WebResponse resp = wc.getResponse( "http://www.sqalab.com/article/html/article_59.html" );

  // 獲得對應(yīng)的表格對象

  WebTable webTable = resp.getTables()[0];

  // 將表格對象的內(nèi)容傳遞給字符串?dāng)?shù)組

  String[][] datas = webTable.asText();

  // 對表格內(nèi)容進(jìn)行測試

  String expect = "中文";

  // 增加 assertEquals 判斷

  Assert.assertEquals(expect,datas[0][0]);

  5.2 對Servlet進(jìn)行測試

  除了對頁面內(nèi)容進(jìn)行測試外,有時候(比如開發(fā)復(fù)雜的Servlets的時候),你需要對 Servlet本身的代碼塊進(jìn)行測試,這時候你可以選擇HttpUnit,它可以提供一個模擬的Servlet容器,讓你的Servlet代碼不需要發(fā)布到Servlet容器(如tomcat)可以直接測試。

  5.2.1 原理簡介

  使用httpunit測試Servlet時,請創(chuàng)建一個ServletRunner的實例,他負(fù)責(zé)模擬Servlet容器環(huán)境。如果你只是測試一個Servlet,你可以直接使用registerServlet方法注冊這個Servlet,如果需要配置多個Servlet,你可以編寫自己的web.xml,然后在初始化ServletRunner的時候?qū)⑺奈恢米鳛閰?shù)傳給 ServletRunner的構(gòu)造器。

  在測試Servlet時,應(yīng)該記得使用ServletUnitClient類作為客戶端,他和前面用過的WebConversation差不多,都繼承自WebClient,所以他們的調(diào)用方式基本一致。要注意的差別是,在使用 ServletUnitClient時,他會忽略URL中的主機地址信息,而是直接指向他的ServletRunner實現(xiàn)的模擬環(huán)境。

上一頁123456下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd