JerseyTest を使用して、RESTful Web サービス用の JUnit ベースの統合テストを作成しています。JAX-RS リソース クラスは Spring を使用しており、現在、次のコード例のようなテスト ケースとすべてを結び付けています。
public class HelloResourceTest extends JerseyTest
{
@Override
protected AppDescriptor configure()
{
return new WebAppDescriptor.Builder("com.helloworld")
.contextParam( "contextConfigLocation", "classpath:helloContext.xml")
.servletClass(SpringServlet.class)
.contextListenerClass(ContextLoaderListener.class)
.requestListenerClass(RequestContextListener.class)
.build();
}
@Test
public void test()
{
// test goes here
}
}
これはサーブレットの配線には機能しますが、SpringJUnit4ClassRunner を呼び出すように見えるモック オブジェクトや DAO などにテストがアクセスできるように、テスト ケースで同じコンテキストを共有できるようにしたいと考えています。残念ながら、SpringJUnit4ClassRunner は別個の並列アプリケーション コンテキストを作成します。
では、SpringServlet とテスト ケースの間で共有されるアプリケーション コンテキストを作成する方法を知っている人はいますか?
ありがとう!