SpringBoot中的response和request模拟单元测试

问题背景

工作中已经用到了前后端分离,比较奇怪的一点是,有些代码在service层都存在request对象,这个就很无语,在测试的时候,由于controller层依旧没有开发完成,所以我们需要对request进行打桩测试。

问题简单描述:如何进行request的打桩测试......

解决方式

关键词:MockHttpRequest、Mock测试

在测试过程中与原来的测试实例编写没有任何区别,只是在创建request对象的时候,可以用MockHttpRequest对象来代替,具体实现代码如下:

@RunWith(SpringJUnit4ClassRunner.class)  
@SpringBootTest(classes = Application.class) //这里需要指明SpringBoot程序的启动类
public class HttpServletTest  {  
  
    private static final Log log = LogFactory.getLog(HttpServletTest.class);  
  
    private MockHttpServletRequest request;    
    private MockHttpServletResponse response;    
      
    @Before  
    public void setUp(){  
        request = new MockHttpServletRequest();    
        request.setCharacterEncoding("UTF-8");    
        response = new MockHttpServletResponse();    
    }  
      
    @Test  
    public void test(){  
        //这里加入测试逻辑代码,可以直接利用request即可 
    }  
      
}  

后记

入职已经将近一个月,测试有时候也是必须要掌握的一个技能,前路漫漫,道阻且长,好好搬砖积累吧。

你可能感兴趣的:(调试)