도우미 클래스의 메서드를 테스트하는 JUnit 테스트 케이스를 작성하려고합니다. 이 메소드는 REST를 사용하여 외부 애플리케이션을 호출하며,이 호출은 JUnit 테스트에서 조롱하려고 시도한다.MockRestServiceServer를 사용하여 REST 호출 조롱
도우미 메서드는 Spring의 RestTemplate을 사용하여 REST 호출을 만듭니다. 내 테스트에서
, 나는 모의 REST 서버 및 모의 REST 템플릿을 생성하고이처럼 그들을 instanitiate : 헬퍼 방법이 있습니다 때 적절한 응답을 반환해야합니다 있도록
@Before
public void setUp() throws Exception {
mockServer = MockRestServiceServer.createServer(helperClass.getRestTemplate());
}
내가 다음 모의 서버 씨앗 나머지 전화 : 내 테스트를 실행하면
// response is some XML in a String
mockServer
.expect(MockRestRequestMatchers.requestTo(new URI(myURL)))
.andExpect(MockRestRequestMatchers.method(HttpMethod.GET))
.andRespond(MockRestResponseCreators.withStatus(HttpStatus.OK)
.contentType(MediaType.APPLICATION_XML)
.body(response));
는, 헬퍼 방법은 REST에서 널 응답을 수신은 만들고 테스트가 실패 호출합니다.
도우미가 만드는 REST URL에 쿼리 매개 변수가 있으며 "http://server:port/application/resource?queryparam1=value1&queryparam2=value2"과 같습니다.
나는 (이 응답을 반환하도록 일치를 이끌어내는)은 "myURL이"변수 모두 쿼리 매개 변수없이 와와 URL ("http://server:port/application/resource")을 퍼팅 시도했지만 모의를 얻을 수 없다 서버가 아무것도 반환하지 않습니다.
나는이 종류의 코드 예제를 검색해 보았지만 내 시나리오와 비슷한 것으로 보이는 것을 아직 찾지 못했습니다.
봄 버전 4.1.7.
미리 도움을 청하십시오.
목차 정적 메소드에 클래스를 작성하기위한 클래스. 'requestTo '. – sjngm