如何用弹簧过滤器测试

时间:2014-09-07 11:02:45

标签: java spring unit-testing

我在我的过滤器链中添加了一个简单的弹簧过滤器,如下所示:

@Component("MDCRequestUniqueIdentifierServletFilter")
public class MDCRequestUniqueIdentifierServletFilter extends DelegatingFilterProxy {
@Autowired
private UserRepository userRepository;
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    try {
        Integer newActivityCode = userRepository.getNewActivityCode();
        MDC.put("ActivityCode", String.valueOf(newActivityCode));
      } finally {
          chain.doFilter(request, response);
          MDC.remove("ActivityCode");
      }
}}

但现在当我运行我的测试时,我得到以下内容:

nested exception is java.lang.IllegalArgumentException: ServletContext must not be null

因为那个过滤器...

我已尝试在我的测试环境中声明它,但这没有帮助。 尝试添加像:

这样的东西
<mvc:annotation-driven/>

也没有帮助。

0 个答案:

没有答案