Cactus使用注意要点:

除了字符串以外,WebRequest的addParameter方法无法将其他对象放进去,而他又没有像HttpServletRequest的setAttribute的方法,但是对于数组这种对象还是可以通过连续add相同key的方法在WebRequest中形成数组:
 req.addParameter("Key", "aaa");
 req.addParameter("Key", "bbb");

 

然後在testXXX()方法中可以将数组取出
 Map map = request.getParameterMap();
 String[] params = map.get("Key");
如果要放入对象,可以在testXXX里写
 //把一个对象放到request里
 Object o = new Object();
 super.request.setAttribute(o);
注意不要将null放进去,否则会引发NullPointer异常。


在setup方法中实例化被测试类:
 public final void setUp() throws Exception {
  testClass = new XXXFilter();
  testClass.init(config);
 }
测试doFilter方法:
 public final void testDoFilterSecCodeUserAgent() {
  testClass.doFilter();
 }

 

注意1:addParameter方法无法将null放进去,否则会引发NullPointer异常
注意2:如果被测Class程序流程受静态变量影响,则无法在单个测试Class中测试所有的分支,需要分多个Class
注意3:如果测试过程中有需要修改Properties的Case的话,只能将每个此类的Case放到单独的测试类中测试,Tomcat在Cactus执行同一测试类的时候无法将Properties文件重新加载

posted on 2010-12-23 23:22  菊次郎  阅读(132)  评论(0)    收藏  举报