@RunWith(MockitoJUnitRunner.class)
public class FeatureFlipperManagerTest {
@Autowired
RestTemplate restTemplate = new RestTemplate();
@Autowired
Service service = new Service();
MockRestServiceServer mockServer = MockRestServiceServer.createServer(restTemplate);
@Test
public void test() throws Exception {
mockServer.expect(requestTo(Mockito.anyString()))
.andRespond(withSuccess("{\"enabled\":true}", MediaType.APPLICATION_JSON));
boolean res = service.isEnabled("xxx");
mockServer.verify();
Assert.assertEquals(true, res);
}
}
サービスでmock restTempleteを使用するMockRestServiceServerがあります。しかし、それは常に失敗します。エラーはjava.lang.AssertionError: Further request(s) expected 0 out of 1 were executed
と表示されます。いずれにせよ、私はそれが正しいことをしていない場所を知らせることができました。このようMockRestServiceServerでRestTempletをモックする方法は?
サービスそのものますルックス:すべての
public class Service{
public boolean isEnabled(String xxx) {
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> response = restTemplate.getForEntity("someurl",String.class);
if(...)return true;
return false;
}
}
私は自分の問題を解決する方法がわかりませんが、私はあなたのコメントが正しいと思います。 restTemplate beanを作成できない場合restTempleteを模倣するために私ができることは他にありますか?実際にはgetコールの応答を嘲笑するだけです。これを行うためにとにかくありますか? – c2340878