我目前正在从事Web项目。我实现了一个控制器类。对于控制器类,对于类调用AbcController,我具有@GetMapping(‘/ api / abc’)批注。基本上,它要做的是返回包含key =“ myKey”,value =“ myValue”的对象的映射。我需要为该课程写一个黄瓜测试。我看到有人将httpEntity用于类似的问题。但是,我对此仍然感到困惑。由于我现在不在家,我稍后将上传我的Java代码和要素类。我认为我可以测试2部分。 1:响应代码,应为200。2:使用Key =“ myKey”创建一个映射对象,并从运行控制器类中获取值,最后比较两个值是否相等。有人可以帮我吗?我不太了解httpEntity的工作原理。谢谢。
这是我的步骤代码,任何人都可以告诉我是否在正确的轨道上,以及httpEntity或ResponseEntity的哪一部分包含我需要的值(应从api调用返回)。谢谢!
public class myControllerStepDef(){
private ResponseEntity<String[]> myResponse;
RequestCall back requesCallback;
HttpEntity<String> entity;
HttpHeaders headers;
UriComponentsBuilder builder;
@When("^the my_service gets api/abc request is sent$")
public void the_serice_gets_abc_request(){
builder = UriComponentsBuilder.fromUriString("/api/abc");
headers = new HttpHeaders();
entity = new HttpEntity<String>(null, headers);
myResponse = restTemplate.exchange(builder.toUriString(),
HttpMethod.GET, entity, String[].class);
}
@Then("^http response for my_service for abc with status code 200$")
public void http_response_for_my_service_for_abc(int arg1){
Assert.assertEquals(arg1, myResponse.getStatusCodeValue());
}
@Then("^verify the value of abc $")
public void verify_the_value_of_abc(String result){
//
}
}