2014-10-07 36 views
5

Tôi có một bộ điều khiển đáp ứng các cuộc gọi REST, tôi có các trường hợp thử nghiệm khác nhau cho các phương pháp công cộng khác của tôi.Trường hợp thử nghiệm Spring Junit cho dịch vụ nghỉ ngơi điều khiển

Tôi không biết làm thế nào để viết một cho bộ điều khiển của tôi:

@RequestMapping(value = "/api/frames", method = RequestMethod.GET) 
public List<Frame> getFrames(
    @RequestParam(value="frameLength", required=true) Double frameLength, 
    @RequestParam(value="frameBreadth", required=true) Double frameBreadth, 
    @RequestParam(value="mountThickness", required=true) Double mountThickness, 
    @RequestParam(value="frameThickness", required=true) Double frameThickness){ 
    List<Frame> tempFrames = new ArrayList<>(); 
    List<FrameVariant> frameVariants = frameVariantService.getFrames(
     frameLength, frameBreadth, mountThickness, frameThickness); 
    for (FrameVariant frameVariant : frameVariants) { 
     tempFrames.add(new Frame(frameVariant)); 
    } 
    return tempFrames; 
    } 

tôi không có đầu mối làm thế nào để viết một trường hợp thử nghiệm cho phương pháp điều khiển này.

+0

Thành thật mà nói, tôi không nghĩ rằng đơn vị thử nghiệm * phương pháp này * có giá trị rất nhiều. Điều duy nhất bạn thực sự có thể kiểm tra là nó chuyển tiếp chính xác các tham số đến hàm 'getFrames' và sau đó chuyển đổi từng' FrameVariant' thành 'Frame'. Cả hàm đó và hàm tạo chuyển đổi nên được kiểm thử theo bất kỳ cách nào. Chức năng này nên được kiểm tra như là kết thúc để kiểm tra kết thúc, tức là triển khai dịch vụ này (và một 'bộ dữ liệu thử nghiệm') và thực hiện một yêu cầu HTTP thực tế. – thecoshman

Trả lời

8

Hãy xem MockMvc. Đó là một phần của mô-đun Kiểm tra mùa xuân.

These tutorials khá mô tả và đi sâu vào chi tiết, do đó bạn nên có ý tưởng ngay lập tức về cách kiểm tra bộ điều khiển MVC của Spring.

+0

@luboskmac, có ổn không khi sử dụng mvc giả để kiểm tra phần còn lại? –

+0

Bạn có một số phản đối tại sao không? Theo quan điểm của tôi, nhóm phải quyết định thử nghiệm hiệu quả nhất cho họ là gì. http://stackoverflow.com/a/153565/1919879 – luboskrnac

0

This bài viết cung cấp một giới thiệu tốt để kiểm tra bộ điều khiển REST với MockMvc. Mã mẫu cho bài đăng này có sẵn trên Github.

Các vấn đề liên quan