花了两天的时间,终于搞定Struts+Spring+Hibernate单元测试!
关于软件的测试,我在一个英文的外国网站上看到: 如果你的测试做的越多,那么你的软开发效率越高,所以马虎不得!
下面是搞定测试的历程.
1,第一反应就是用JUNIT, 当然没问题, 一搞就通,测测DAO是没有问题的,测试代码如下:
java代码: |
20 private IBoardTreeDAO boardTreeDAO = null; 24 super.setUp(); 28 30 boardTreeDAO = null; 33 36 Board board=boardTreeDAO.getBoardById("40288548ff334c2300ff334c27700003"); 41 44 Board board= boardTreeDAO.getBoardById("40288548ff38b15e00ff38b163c00003"); 48 50 String parentid = "40288548ff334c2300ff334c27700003"; 58 Board board=(Board)it.next(); 61 65 67 String parentid = "40288548ff334c2300ff334c27700003"; 72 74 Board board=boardTreeDAO.getBoardById("40288548ff38b26900ff38b26b8b0001"); 80 82 String id = "40288548ff38b26900ff38b26b8b0001"; 88 90 List expectedReturn =new ArrayList(); 98 Board board=(Board)roots.next(); 101 assertEquals("ROOTS版块值", expectedReturn, actualReturn); 104 106 Board board = new Board(); 112 114 Board board = new Board(); 119 121
|
2.下面想测STRUTS了,第二反应就是用cactus,打开JBUILDER例使用向导,两三下就搞定了,不过问题来了,cactus测试SERVLET没问题,测试STRUTS就不行了!
--------------- 卡住了!
3.想到了STRUTSTEST的套件,打开http://strutstestcase.sourceforge.net网址,下载一个下来安装!
使用模似方式吧. 写一个测试文件,运行不过,报错,找不到WIN-INF目录. 细读STRUTSTEST的套件英语说明书(好在不难读).说是要指定classpath. 指了一下,不过在JUBILDER中,指定的环境变量好象没用, 把JBUILDER的菜单翻了几遍,也没有JBUILDER中指定casspath的设置,我又不想在命令行中测试.
--------------- 又 卡住了!
4.决定用STRUTSTEST+cactus,很快就配好了,但行不过,硬是找不到原因.真气人. 决定放弃此方式,用 Spring自带的STRUTS测试例子中的方法,看来看去一大堆代码,也读得不太懂,运行时又报错,说是有的方法没有定义,我拷!!!!!!
--------------- 又又 卡住了!
5.再次决定用STRUTSTEST+cactus,研究了一下,发现jbuilder的cactus的版本太低,升级一下,一试就成功了.代码如下":
java代码: |
22 24 super(testName); 26 29 addRequestParameter("name", "dhj"); 38 40
|
- 作者: airfish78 2004年11月16日, 星期二 10:48