01.package com.amway.test;
02.import java.io.IOException;
03.import org.xml.sax.SAXException;
04.import com.meterware.httpunit.GetMethodWebRequest;
05.import com.meterware.httpunit.PostMethodWebRequest;
06.import com.meterware.httpunit.TableCell;
07.import com.meterware.httpunit.WebConversation;
08.import com.meterware.httpunit.WebForm;
09.import com.meterware.httpunit.WebLink;
10.import com.meterware.httpunit.WebRequest;
11.import com.meterware.httpunit.WebResponse;
12.import com.meterware.httpunit.WebTable;
13.import junit.framework.TestCase;
14.public class WebExistTest extends TestCase{
15.
16. //测试页面是否存在1
17. public void testWebExists(){
18. //模拟浏览器对象,拥有一个浏览器
19. WebConversation webConversation = new WebConversation();
20. try {
21. webConversation.getResponse("http://localhost:8080/Httpunit/");
22. } catch (IOException e) {
23. e.printStackTrace();
24. } catch (SAXException e) {
25. e.printStackTrace();
26. }
27. }
28. //测试页面是否存在2
29. public void testWebExists2(){
30. //模拟浏览器对象,拥有一个浏览器
31. WebConversation webConversation = new WebConversation();
32. //用get方法得到 一个请求对象
33. WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/");
34. try {
35. webConversation.getResponse(request);
36. } catch (IOException e) {
37. e.printStackTrace();
38. } catch (SAXException e) {
39. e.printStackTrace();
40. }
41. }
42. //测试获取页面的内容 (源代码)
43. public void testWebContenct(){
44. WebConversation webConversation = new WebConversation();
45. try {
46. WebResponse response = webConversation.getResponse("http://localhost:8080/Httpunit/");
47. System.out.println(response.getText());
48. } catch (IOException e) {
49. e.printStackTrace();
50. } catch (SAXException e) {
51. e.printStackTrace();
52. }
53. }
54. //测试获取页面内容,并传递参数(get方式)
55. public void testWebContenctWithParameterGet(){
56. WebConversation webConversation = new WebConversation();
57. WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/");
58. request.setParameter("username", "xaiobai");
59. try {
60. WebResponse response = webConversation.getResponse(request);
61. System.out.println(response.getText());
62. } catch (IOException e) {
63. e.printStackTrace();
64. } catch (SAXException e) {
65. e.printStackTrace();
66. }
67. }
68. //测试获取页面的内容,并传递参数(post方式 )
69. public void testWebContenctWithParameterPost(){
70. WebConversation webConversation = new WebConversation();
71. WebRequest request = new PostMethodWebRequest("http://localhost:8080/Httpunit/doForm.jsp");
72. request.setParameter("username", "xaiobai");
73. try {
74. WebResponse response = webConversation.getResponse(request);
75. System.out.println(response.getText());
76. } catch (IOException e) {
77. e.printStackTrace();
78. } catch (SAXException e) {
79. e.printStackTrace();
80. }
81. }
82. //测试页面成功跳转
83. public void testWebPageRedirectSuccess(){
84. WebConversation webConversation = new WebConversation();
85. WebRequest request = new PostMethodWebRequest("http://localhost:8080/Httpunit/validate.jsp");
86. request.setParameter("username", "xiaobai");
87. request.setParameter("password", "123");
88. try {
89. WebResponse response = webConversation.getResponse(request);
90. String expectedUrl = "http://localhost:8080/Httpunit/success.jsp";
91. this.assertEquals("验证失败",expectedUrl ,response.getURL().toString());
92. } catch (IOException e) {
93. e.printStackTrace();
94. } catch (SAXException e) {
95. e.printStackTrace();
96. }
97. }
98. //测试页面失败跳转
99. public void testWebPageRedirectFailed(){
100. WebConversation webConversation = new WebConversation();
101. WebRequest request = new PostMethodWebRequest("http://localhost:8080/Httpunit/validate.jsp");
102. request.setParameter("username", "xiaobai");
103. request.setParameter("password", "123111");
104. try {
105. WebResponse response = webConversation.getResponse(request);
106. String expectedUrl = "http://localhost:8080/Httpunit/failed.jsp";
107. this.assertEquals("验证失败",expectedUrl ,response.getURL().toString());
108. } catch (IOException e) {
109. e.printStackTrace();
110. } catch (SAXException e) {
111. e.printStackTrace();
112. }
113. }
114.
115. //测试网页表格
116. public void testWebTable(){
117. WebConversation webConversation = new WebConversation();
118. WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/tableTest.jsp");
119. try{
120. WebResponse response = webConversation.getResponse(request);
121. //获取外层表格的第一个
122. WebTable table = response.getTables()[0];
123. this.assertEquals(2, table.getColumnCount());
124. //行由0开始
125. TableCell cell= table.getTableCell(2, 0);
126. this.assertEquals("版次", cell.getText());
127. //this.assertEquals("", table.g)
128. }catch(Exception e) {
129. e.printStackTrace();
130. }
131. }
132. //测试网络中的连接
133. public void testWebClickPage(){
134. WebConversation webConversation = new WebConversation();
135. WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/");
136. try {
137. WebResponse response = webConversation.getResponse(request);
138. System.out.println(response.getText());
139. WebLink link = response.getLinkWith("HttpUnit ABC");
140. request = link.getRequest();
141. String expetedURL = request.getURL().toString();
142. this.assertEquals(expetedURL, "http://localhost:8080/Httpunit/tableTest.jsp");
143. } catch (IOException e) {
144. e.printStackTrace();
145. } catch (SAXException e) {
146. e.printStackTrace();
147. }
148. }
149. //测试网络中的form
150. public void testWebForm(){
151. WebConversation webConversation = new WebConversation();
152. WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/formTest.jsp");
153. try {
154. WebResponse response = webConversation.getResponse(request);
155. System.out.println(response.getText());
156. WebForm form = response.getForms()[0];
157. String name = form.getParameterValue("Name");
158. String food = form.getParameterValue("Food");
159. String location = form.getParameterValue("Location");
160. String CreditCard = form.getParameterValue("CreditCard");
161. this.assertEquals("La Cerentolia", name);
162. this.assertEquals("Chinese", food);
163. this.assertEquals("CenterCity", location);
164. this.assertEquals("on", CreditCard);
165. } catch (IOException e) {
166. e.printStackTrace();
167. } catch (SAXException e) {
168. e.printStackTrace();
169. }
170. }
171. //测试表单提交
172. public void testFormSubmit(){
173. WebConversation webConversation = new WebConversation();
174. WebRequest request = new GetMethodWebRequest("http://localhost:8080/Httpunit/formTest.jsp");
175. try {
176. WebResponse response = webConversation.getResponse(request);
177. System.out.println(response.getText());
178. WebForm form = response.getForms()[0];
179.
180. form.setParameter("Name", "xiaobai");
181. form.setParameter("Food", "Italian");
182. form.setParameter("Location", "MiddleCity");
183. form.setParameter("CreditCard", "on");
184. //获取提交的url
185. response = form.submit();
186.
187. String expetedURL = response.getURL().toString();
188. this.assertEquals("http://localhost:8080/Httpunit/doForm.jsp", expetedURL);
189. } catch (IOException e) {
190. e.printStackTrace();
191. } catch (SAXException e) {
192. e.printStackTrace();
193. }
194. }
195.}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/fondOfJava/archive/2010/04/18/5499914.aspx