最近开始针对Junit测试框架进行深入地学习。我来说说我使用cactus来测试的第一个servlet的实例吧。其中有许多的不理解,望大家不吝指教。
第一步,我到[url]http://jakarta.apache.org[/url]官网上下载cactus-1.8.1-bin和cactus-1.8.1-src至本地,并解压到某一目录。
第二步,我打开源文件,找到其中的实例SampleServlet.java与TestSampleServlet.java两个源文件,开始照着写。
第三步,我看cactus项目的web.xml和cactus-web.xml配置文件,有许多地方没弄明白,如下:
因为第一次照着官网的源文件写代码,这个示例我一开始并未能运行成功,但之后从网上看了别人的关于cactus的示例,总算运行成功了。其中因为报错,又下载了两个jar包(commons-codec-1.4.jar、commons-el.jar)。我的运行环境是:eclipse3.3.x + junit 4.8 + cactus 1.8.1 + tomcat 6.0.20 + jdk 1.5.0.在此附上我的源程序,望大家指点。
刚才看了官方文档,才发现真得很简单哦!呵呵。[url]http://jakarta.apache.org/cactus/integration/howto_tomcat.html[/url]
第一步,我到[url]http://jakarta.apache.org[/url]官网上下载cactus-1.8.1-bin和cactus-1.8.1-src至本地,并解压到某一目录。
第二步,我打开源文件,找到其中的实例SampleServlet.java与TestSampleServlet.java两个源文件,开始照着写。
第三步,我看cactus项目的web.xml和cactus-web.xml配置文件,有许多地方没弄明白,如下:
<!-- 问题一:下面这个servlet配置的作用是什么?主要应用在哪里? -->
<servlet>
<servlet-name>ServletRedirector_TestOverride</servlet-name>
<servlet-class>org.apache.cactus.server.ServletTestRedirector</servlet-class>
<init-param>
<param-name>param2</param-name>
<param-value>value2 used for testing</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>ServletRedirector_TestOverride</servlet-name>
<url-pattern>/ServletRedirectorOverride</url-pattern>
</servlet-mapping>
<!-- 问题二:为什么cactus的配置文件中并没有配置下面这个servlet? -->
<servlet>
<servlet-name>ServletTestRunner</servlet-name>
<servlet-class>org.apache.cactus.server.runner.ServletTestRunner</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletTestRunner</servlet-name>
<url-pattern>/ServletTestRunner</url-pattern>
</servlet-mapping>
<!--问题三:为什么配置下面这个servlet?它的作用是什么?-->
<servlet>
<servlet-name>ServletRedirector_TestOverride</servlet-name>
<servlet-class>org.apache.cactus.server.ServletTestRedirector</servlet-class>
<init-param>
<param-name>param2</param-name>
<param-value>value2 used for testing</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>ServletRedirector_TestOverride</servlet-name>
<url-pattern>/ServletRedirectorOverride</url-pattern>
</servlet-mapping>
因为第一次照着官网的源文件写代码,这个示例我一开始并未能运行成功,但之后从网上看了别人的关于cactus的示例,总算运行成功了。其中因为报错,又下载了两个jar包(commons-codec-1.4.jar、commons-el.jar)。我的运行环境是:eclipse3.3.x + junit 4.8 + cactus 1.8.1 + tomcat 6.0.20 + jdk 1.5.0.在此附上我的源程序,望大家指点。
刚才看了官方文档,才发现真得很简单哦!呵呵。[url]http://jakarta.apache.org/cactus/integration/howto_tomcat.html[/url]