在测试中,我希望命中一个返回类型列表的端点。目前我有@Testpublic void when_endpoint_is_hit_then_return_list(){ //Given ParameterizedTypeReference<List<Example>> responseType = new ParameterizedTypeReference<List<Example>>() {}; String targetUrl = "/path/to/hit/" + expectedExample.getParameterOfList(); //When //This works however highlights an unchecked assignment of List to List<Example> List<Example> actualExample = restTemplate.getForObject(targetUrl, List.class); //This does not work List<Example> actualExample = restTemplate.getForObject(targetUrl, responseType); //This does not work either List<Example> actualExample = restTemplate.exchange(targetUrl, HttpMethod.GET, null, new ParameterizedTypeReference<List<Example>>() {}); //Then //Assert Results}getForObject 方法的问题是 ParameterizedTypeReference 使 getForObject 方法无法解析,因为类型不匹配。交换方法的问题是类型不兼容。必需的列表,但“交换”被推断为 ResponseEntity:不存在类型变量的实例,因此 ResponseEntity 符合列表在这种情况下,如何正确使用 ParameterizedTypeReference 来安全地返回我想要的 List 类型?
添加回答
举报
0/150
提交
取消