对Servlet请求或响应进行JMockit测试

Posted Mister_W

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对Servlet请求或响应进行JMockit测试相关的知识,希望对你有一定的参考价值。

对Servlet请求及响应进行mock方法,

通过getMockInstance方法对servlet进行打桩,对servlet提供的方法进行mock,替代真正的servlet请求或响应。 

参考链接:

https://stackoverflow.com/questions/31689729/servlet-junit-test-using-jmockit

代码如下:

@RunWith(JMockit.class)
public class ImageServletTest3 {

     @Test
    public void testImageNotFound() throws Exception {
        ImageServlet servlet = new ImageServlet();

        servlet.doGet(
            new MockUp<HttpServletRequest>() {
              @Mock
              public String getParameter(String id){
                return null;
              }

            }.getMockInstance(),
            new MockUp<HttpServletResponse>() {
              @Mock
              public void sendError(int num){
                Assert.assertThat(num, IsEqual.equalTo(404));               
              }             
            }.getMockInstance()
       );
    }
}

以上是关于对Servlet请求或响应进行JMockit测试的主要内容,如果未能解决你的问题,请参考以下文章

拦截器

原创如何使用Jmockit进行单元测试

Filter 介绍

Servlet请求和响应和Cookie

Filter与Servlet的区别和联系

Servlet编程专题9之Servlet规范中的过滤器