發布: 2007-10-08 11:36 | 作者: 網絡轉載 | 來源: 網絡轉載 | 查看: 303次 | 進入軟件測試論壇討論
4.4 處理頁面中的表單
表單是用來接受用戶輸入,也可以向用戶顯示用戶已輸入信息(如需要用戶修改數據時,通常會顯示他以前輸入過的信息),在HttpUnit中使用數組來處理頁面中的多個表單,你可以用resp.getForms()方法獲取頁面所有的表單對象。他們依照出現在頁面中的順序保存在一個數組里面。
[注意] Java中數組下標是從0開始的,所以取第一個表單應該是resp.getForms()[0],其他以此類推。
下面的例子演示如何從頁面中取出第一個表單的內容并且將他們循環顯示出來:
System.out.println("獲取頁面中表單的內容:");
//建立一個WebConversation實例
WebConversation wc = new WebConversation();
//獲取響應對象
WebResponse resp = wc.getResponse( " http://localhost:6888/HelloWorld.html " );
//獲得對應的表單對象
WebForm webForm = resp.getForms()[0];
//獲得表單中所有控件的名字
String[] pNames = webForm.getParameterNames();
int i = 0;
int m = pNames.length;
//循環顯示表單中所有控件的內容
while(i<m){
System.out.println("第"+(i+1)+"個控件的名字是"+pNames+",里面的內容是"+
webForm.getParameterValue(pNames));++i;
}
System.out.println("獲取頁面中表格的內容并且進行測試:");
//建立一個WebConversation實例
WebConversation wc = new WebConversation();
//獲取響應對象
WebResponse resp = wc.getResponse( " http://localhost:6888/TableTest.html " );
//獲得對應的表格對象
WebTable webTable = resp.getTables()[0];
//將表格對象的內容傳遞給字符串數組
String[][] datas = webTable.asText();
//對表格內容進行測試
String expect = "中文";
Assert.assertEquals(expect,datas[0][0]);