1
私はJersey Test、Mockito、JunitでテストするREST Webサービスを持っています。 Webサービスメソッドが正常に実行されると、正しい応答が得られます。データが無効な場合、ExceptionMapperで処理する必要があるカスタム例外がスローされます。同じ構造応答を返しますが、コードは異なります。 ExceptionMapperは、テスト環境では機能しません。しかし、後のテスト実行ログが表示さ:ジャージーテスト - ExceptionMapperが呼び出されない
1 < 500
1 < Connection: close
1 < Content-Length: 1033
1 < Content-Type: text/html;charset=ISO-8859-1
1 < Date: Wed, 30 Mar 2016 11:55:37 GMT
javax.ws.rs.InternalServerErrorException: HTTP 500 Request failed.
at org.glassfish.jersey.client.JerseyInvocation.convertToException(JerseyInvocation.java:1020)
at org.glassfish.jersey.client.JerseyInvocation.translate(JerseyInvocation.java:816)
at org.glassfish.jersey.client.JerseyInvocation.access$700(JerseyInvocation.java:92)
は、私が使用:
<dependency>
<groupId>org.glassfish.jersey.test-framework.providers</groupId>
<artifactId>jersey-test-framework-provider-grizzly2</artifactId>
<version>2.22.2</version>
</dependency>
テストクラスによってextentedされ嘲笑サービスの
短縮バージョン:
public class MockedService extends JerseyTest {
@Override
public ResourceConfig configure() {
forceSet(TestProperties.CONTAINER_PORT, "8080");
enable(TestProperties.LOG_TRAFFIC);
return new ResourceConfig().register(new Service());
}
}
ExceptionMapperからの応答を取得する方法?あなたはまだあなた実環境でExceptionMapper
return new ResourceConfig()
.register(new Service())
.register(new YourMapper());
を登録する必要があり