如何使用JUnit测试Servlet?

时间:2010-02-10 09:24:46

标签: testing servlets junit

我看到Jetty已经有了ServletTest类,您可以使用它来测试Servlet。

tester = new ServletTester();
tester.setContextPath("/");
tester.addServlet(TestServlet.class, "/servlet/*");
... 
tester.start();

你知道Tomcat中是否有类似内容吗? 我怎么测试一个servlet?

3 个答案:

答案 0 :(得分:9)

HttpUnit有一个名为ServletUnit的“模拟容器”。

答案 1 :(得分:6)

查看Jakarta Cactus

  

Cactus是一个简单的测试框架,用于测试服务器端Java代码(Servlet,EJB,Tag Libs,Filters,...)。

Here's a servlet test how-to

答案 2 :(得分:2)

我从来没有发现直接测试servlet的好处(也就是Struts的行为),特别是考虑到完成这项工作所需的工作。

我的大多数servlet / actions /用于大部分工作的POJO以及POJO都经过严格测试。 Web应用程序本身具有HtmlUnit测试套件。我之间的一切都假设只是管道。

我不相信我曾经遇到任何类型的错误,只能通过直接测试servlet类来捕获,而且不会被POJO或webapp测试捕获。