- package com.amway.test;
- import java.io.IOException;
- import org.xml.sax.SAXException;
- import com.meterware.httpunit.GetMethodWebRequest;
- import com.meterware.httpunit.PostMethodWebRequest;
- import com.meterware.httpunit.TableCell;
- import com.meterware.httpunit.WebConversation;
- import com.meterware.httpunit.WebForm;
- import com.meterware.httpunit.WebLink;
- import com.meterware.httpunit.WebRequest;
- import com.meterware.httpunit.WebResponse;
- import com.meterware.httpunit.WebTable;
- import junit.framework.TestCase;
- public class WebExistTest extends TestCase{
- //測試頁面是否存在1
- public void testWebExists(){
- //模擬瀏覽器對象,擁有一個瀏覽器
- WebConversation webConversation = new WebConversation();
- try {
- webConversation.getResponse("http://localhost:8080/Httpunit/");
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試頁面是否存在2
- public void testWebExists2(){
- //模擬瀏覽器對象,擁有一個瀏覽器
- WebConversation webConversation = new WebConversation();
- //用get方法得到 一個請求對象
- WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/");
- try {
- webConversation.getResponse(request);
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試獲取頁面的內容 (源代碼)
- public void testWebContenct(){
- WebConversation webConversation = new WebConversation();
- try {
- WebResponse response = webConversation.getResponse("http://localhost:8080/Httpunit/");
- System.out.println(response.getText());
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試獲取頁面內容,並傳遞參數(get方式)
- public void testWebContenctWithParameterGet(){
- WebConversation webConversation = new WebConversation();
- WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/");
- request.setParameter("username", "xaiobai");
- try {
- WebResponse response = webConversation.getResponse(request);
- System.out.println(response.getText());
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試獲取頁面的內容,並傳遞參數(post方式 )
- public void testWebContenctWithParameterPost(){
- WebConversation webConversation = new WebConversation();
- WebRequest request = new PostMethodWebRequest("http://localhost:8080/Httpunit/doForm.jsp");
- request.setParameter("username", "xaiobai");
- try {
- WebResponse response = webConversation.getResponse(request);
- System.out.println(response.getText());
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試頁面成功跳轉
- public void testWebPageRedirectSuccess(){
- WebConversation webConversation = new WebConversation();
- WebRequest request = new PostMethodWebRequest("http://localhost:8080/Httpunit/validate.jsp");
- request.setParameter("username", "xiaobai");
- request.setParameter("password", "123");
- try {
- WebResponse response = webConversation.getResponse(request);
- String expectedUrl = "http://localhost:8080/Httpunit/success.jsp";
- this.assertEquals("驗證失敗",expectedUrl ,response.getURL().toString());
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試頁面失敗跳轉
- public void testWebPageRedirectFailed(){
- WebConversation webConversation = new WebConversation();
- WebRequest request = new PostMethodWebRequest("http://localhost:8080/Httpunit/validate.jsp");
- request.setParameter("username", "xiaobai");
- request.setParameter("password", "123111");
- try {
- WebResponse response = webConversation.getResponse(request);
- String expectedUrl = "http://localhost:8080/Httpunit/failed.jsp";
- this.assertEquals("驗證失敗",expectedUrl ,response.getURL().toString());
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試網頁表格
- public void testWebTable(){
- WebConversation webConversation = new WebConversation();
- WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/tableTest.jsp");
- try{
- WebResponse response = webConversation.getResponse(request);
- //獲取外層表格的第一個
- WebTable table = response.getTables()[0];
- this.assertEquals(2, table.getColumnCount());
- //行由0開始
- TableCell cell= table.getTableCell(2, 0);
- this.assertEquals("版次", cell.getText());
- //this.assertEquals("", table.g)
- }catch(Exception e) {
- e.printStackTrace();
- }
- }
- //測試網絡中的連接
- public void testWebClickPage(){
- WebConversation webConversation = new WebConversation();
- WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/");
- try {
- WebResponse response = webConversation.getResponse(request);
- System.out.println(response.getText());
- WebLink link = response.getLinkWith("HttpUnit ABC");
- request = link.getRequest();
- String expetedURL = request.getURL().toString();
- this.assertEquals(expetedURL, "http://localhost:8080/Httpunit/tableTest.jsp");
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試網絡中的form
- public void testWebForm(){
- WebConversation webConversation = new WebConversation();
- WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/formTest.jsp");
- try {
- WebResponse response = webConversation.getResponse(request);
- System.out.println(response.getText());
- WebForm form = response.getForms()[0];
- String name = form.getParameterValue("Name");
- String food = form.getParameterValue("Food");
- String location = form.getParameterValue("Location");
- String CreditCard = form.getParameterValue("CreditCard");
- this.assertEquals("La Cerentolia", name);
- this.assertEquals("Chinese", food);
- this.assertEquals("CenterCity", location);
- this.assertEquals("on", CreditCard);
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- //測試表單提交
- public void testFormSubmit(){
- WebConversation webConversation = new WebConversation();
- WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/formTest.jsp");
- try {
- WebResponse response = webConversation.getResponse(request);
- System.out.println(response.getText());
- WebForm form = response.getForms()[0];
- form.setParameter("Name", "xiaobai");
- form.setParameter("Food", "Italian");
- form.setParameter("Location", "MiddleCity");
- form.setParameter("CreditCard", "on");
- //獲取提交的url
- response = form.submit();
- String expetedURL = response.getURL().toString();
- this.assertEquals("http://localhost:8080/Httpunit/doForm.jsp", expetedURL);
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SAXException e) {
- e.printStackTrace();
- }
- }
- }
HttpUnit入門的簡單例子 .
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.