Tôi đang ở điểm mà tôi cần phải viết các bài kiểm tra đơn vị cho một API REST được viết bằng CakePHP 1.3. API hỗ trợ các yêu cầu GET, POST và PUT để truy vấn và thao tác dữ liệu.Làm thế nào để kiểm tra đơn vị API của bạn?
Có cách nào được thiết lập để kiểm tra đầu vào/đầu ra chính xác của API mô phỏng yêu cầu HTTP hay không, sử dụng đồ đạc? Tôi không muốn chạy các yêu cầu POST/PUT thực tế đối với cơ sở dữ liệu trực tiếp (dev). Làm thế nào tôi có thể mô phỏng tốt nhất hệ thống để sử dụng các mô hình tạm thời, nhưng vẫn kiểm tra phần còn lại của ngăn xếp như là?
Kiểm tra yêu cầu GET đủ dễ dàng với controller tests. Tuy nhiên, để thao tác dữ liệu, API sử dụng các tiêu đề HTTP khá rộng rãi và cũng phân tích cú pháp dữ liệu XML và JSON POST/PUT thô. Các phương pháp kiểm tra đơn vị bộ điều khiển chỉ giả lập dữ liệu POST bằng cách thiết lập $this->data
trong bộ điều khiển, điều này không cho phép tôi kiểm tra đúng API.
Nếu bạn đang thử nghiệm gần như toàn bộ ngăn xếp cùng một lúc, nó không thực sự là một thử nghiệm đơn vị nữa, phải không? – wds
@wds Sau đó, một lần nữa, không phải là một yêu cầu API giống như một cuộc gọi chức năng cho khách hàng? Tại sao * không nên * Tôi thử nghiệm điều này như một tổng thể? – deceze
nó chỉ là một câu hỏi nhỏ về danh pháp. Tôi đã gọi đây là một bài kiểm tra tích hợp, không phải là một bài kiểm tra đơn vị. – wds