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 阅读(793) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: