, 당신은 특정 URL이 특정 방법으로 처리하도록 지정할 수 있으며, 특정 매개 변수과 같이, 특정 인수에 매핑되도록 지정할 수 있습니다테스트 스프링 MVC 주석 mapppings 스프링 MVC와
@Controller
public class ImageController {
@RequestMapping("/getImage")
public String getImage(@RequestParam("imageId") int imageId, Map<String,Object> model) {
model.put("image",ImageService.getImage(imageId));
}
}
이를 모두 좋았지 만, 이제는 imageId 매개 변수가있는 http 요청이이 메소드를 올바르게 호출하는지 테스트하려고합니다. 즉, 주석을 제거하거나 변경하면 중단되는 테스트가 필요합니다. 이것을 할 수있는 방법이 있습니까?
getImage가 올바르게 작동하는지 테스트하기 쉽습니다. ImageController를 만들고 적절한 인수로 getImage를 호출 할 수 있습니다. 그러나 이것은 테스트의 절반에 불과합니다. 테스트의 나머지 절반은 적절한 HTTP 요청이 들어올 때 getImage()가 Spring 프레임 워크에 의해 호출 될지 여부 여야합니다. 특히 @RequestMapping
주석이 더 복잡해지고 복잡해지기 때문에이 부분에 대한 테스트가 필요합니다. 매개 변수 조건.
라인 4를 제거하면 작동하지 않을 테스트를 표시 할 수 있습니까? @RequestMapping("getImage")
?
질문을 완전히 이해하지 못했습니다. 어노테이션 매핑을 사용하는 Spring MVC 컨트롤러에 대한 유닛 테스트를 만드는 방법 "을 의미합니까? –
죄송합니다. 주석이 정확하다는 것을 테스트하고, HTTP 요청이 실제로이 메소드를 호출한다는 것을 의미합니다. –