Hibernate進行時

          有關Hibenrate及其相關工具的主頁
          隨筆 - 0, 文章 - 16, 評論 - 29, 引用 - 0
          數據加載中……

          StrutsTestCase的Cactus測試

             Cactus比Mock測試復雜了很多,但優點是可以充分測試整個應用環境,并且可以通過Web容器很容易地得到Spring的資源。
             1.  下載兩個資源,StrutsTest和jakarta-cactus,其下載地點分別是http://sourceforge.net/projects/strutstestcase/http://jakarta.apache.org/cactus/
             2.  編寫一個可以運行Struts+spring應用。
             3.  在WEB-INF\lib目錄下加入StrutsTest的strutstest-2.1.0.jar,加入jakarta-cactus的
          • cactus.jar
          • commons-httpclient.jar
          • commons-logging.jar
          • junit.jar
          • aspectjrt.jar

             4.  在web.xml中加入以下代碼,這些代碼幾乎對所有的WEb應用都是一樣的,拷來拷去的就可以。
           

              <servlet>
                  
          <servlet-name>ServletRedirector</servlet-name>
                  
          <servlet-class>org.apache.cactus.server.ServletTestRedirector</servlet-class>
              
          </servlet>
              
          <!---定義ServletTestRunner-->
              
          <servlet>
                  
          <servlet-name>ServletTestRunner</servlet-name>
                  
          <servlet-class>org.apache.cactus.server.runner.ServletTestRunner</servlet-class>
              
          </servlet>
              
          <servlet-mapping>
                  
          <servlet-name>ServletRedirector</servlet-name>
                  
          <url-pattern>/ServletRedirector</url-pattern>
              
          </servlet-mapping>
              
          <!---映射ServletTestRunner-->
              
          <servlet-mapping>
                  
          <servlet-name>ServletTestRunner</servlet-name>
                  
          <url-pattern>/ServletTestRunner</url-pattern>
              
          </servlet-mapping>

             5.  在WEB-INF\classes目錄下新建一個名為cactus.properties的文件,其內容很簡單,只有一行,如下。
          cactus.contextURL = http://localhost:8080/strutsTest

             上述的網址表示自己的Web應用的根地址。
             6.  編寫測試用例。

           

          package action;

          import servletunit.struts.CactusStrutsTestCase;

          public class TestStuAction extends CactusStrutsTestCase {
              
          public TestStuAction(String testName) {
                  
          super(testName);
              }

              
          public void setUp() throws Exception {
                  
          super.setUp();
                 }

              
          public void testInsert() {
                   setRequestPathInfo(
          "/StuAction");
                  addRequestParameter(
          "cardId","radar");
                  addRequestParameter(
          "name","aaaa");
                  addRequestParameter(
          "age","34");
                  addRequestParameter(
          "method","insert");
                  
                  actionPerform();
                  verifyForward(
          "stu_list");
                 
              }



          }



             然后在保存Web服務器正常運行的情況下,直接運行上述測試用例即可運行/StuAction.do這個Action的操作。在系統比較復雜的情況下,直接運行測試用例比從網頁進入合適的功能列表,然后執行相應的操作以激發Action動作要簡單快捷得多。

          posted on 2006-02-16 14:25 caixuetao 閱讀(800) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 东安县| 繁峙县| 巴彦县| 福鼎市| 特克斯县| 毕节市| 延边| 邯郸县| 安泽县| 南昌县| 铜山县| 额济纳旗| 南皮县| 成武县| 崇义县| 青冈县| 隆尧县| 灵台县| 普安县| 连江县| 微博| 翁源县| 阿拉善右旗| 合肥市| 漠河县| 崇州市| 闵行区| 洪雅县| 金平| 泉州市| 巴中市| 柯坪县| 无锡市| 商河县| 济阳县| 汝阳县| 乐昌市| 那曲县| 库车县| 同仁县| 沾益县|