【发布时间】:2021-11-15 00:12:33
【问题描述】:
谁能告诉我你怎么写一个测试。我现在必须使用RestTemplate 测试从一台服务器向另一台服务器发送请求。
class ServiceTest {
@Mock
private RestTemplate restTemplate = new RestTemplate();
@InjectMocks
private RConsumerService refundConsumerService = new RConsumerService(new RestTemplateBuilder());
@Test
public void sendRequestToBillingService(){
ChargeResponse chargeResponse = new ChargeResponse();
chargeResponse.setInstanceKey("testInstanceKey");
KafkaMessage kafkaMessage = new KafkaMessage();
kafkaMessage.setApplication_id(1L);
kafkaMessage.setCompany_id(1111);
TransactionRequestContext reqContext = refundConsumerService.createTxnRequestContext(kafkaMessage);
Mockito.when(restTemplate.postForEntity(Mockito.any()
, refundConsumerService.buildChargeRequest(reqContext), ChargeResponse.class))
.thenReturn(new ResponseEntity<>(chargeResponse, HttpStatus.OK));
refundConsumerService.refund(kafkaMessage);
assertEquals(chargeResponse.getInstanceKey(), "testInstanceKey");
}
}
如何正确地写条件
Mockito.when(restTemplate.postForEntity(Mockito.any()
, refundConsumerService.buildChargeRequest(reqContext), ChargeResponse.class))
.thenReturn(new ResponseEntity<>(chargeResponse, HttpStatus.OK));
现在我收到了这个异常java.lang.IllegalArgumentException: URI is required
【问题讨论】: