@Configuration을 사용한 웹 설정 파일 테스트 작성시 난감함…

이렇게 코딩을 해두고.. 이 설정 파일에서 빈으로 등록되는 것들이 제대로 등록되나 궁금하니까 테스트를 작성해볼 수 있겠죠.

이런식으로 말이죠. di() 메서드 아무것도 안해도 사실상 제가 원하는 테스트는 저정도면 충분하거든요. 그리고 이정도 테스트는 XML 기반으로 설정할 때도 잘 통과했었는데…. 흠.. 잘 안됩니다. ApplicationContext를 제대로 만들지 못합니다. 특정 빈을 만들지 못하기 때문이죠. DefaultServlet을 사용하려면 ServletContext가 필요하다는 에러가 나면서 Assert.notNull()에서 걸리고 말죠… 어찌하면 좋을까나…

스프링 TestContext를 포기할 수밖에 없는건가…

그리고 그게 꼭 필요한거면 XML 기반으로 동일한 설정을 할때도 안됐어여 하는거 아닌가..

흠.. 고민이로세.

아.. 그냥 테스트하지 말까.. 너무 당연한거니깐?? ㅋㅋㅋ

2 thoughts on “@Configuration을 사용한 웹 설정 파일 테스트 작성시 난감함…”

  1. 원래 XML 기반 설정에서도 TestContext Framework 하에서 ServletContext 는 자동주입이 안 되지 않던가요~?
    저도 일단은 유닛 테스트에서 MockServletContext 를 빈으로 등록해주는 방법밖에 모르겠네요 🙂 더 나은 방법이 있는지는 잘 모르겠지만 이 정도면 테스트 목적으로는 되지 않을까… 싶습니다.

    1. 흠… XML 기반 설정에서는 애초에 ServletContext를 주입할 필요조차 없었지요. 그때는 MockServletContext 같은걸 사용할 필요가 없었는데 자바 설정부터는 꼭 그래야 하는 것인지.. 좀 이해가 안되는 상황이네요.

      https://gist.github.com/2399617

      XML로 거의 동일한 설정이 요건데.. 여기서 DefaultServlet을 사용하겠다고 할 때는 ServletContext가 없다고 별다른 에러가 나진 않거든요. SimpleUrlHandlerMapping 타입의 빈도 잘 등록되고요. 흠냐. 그렇다고 네임스페이스 핸들러 파보기는 너무 귀찮고.. @_@… 자야지 ㅠ.ㅠ

Leave a Reply

Your email address will not be published. Required fields are marked *