Nếu bạn đang xây dựng một ứng dụng lớn và không có một đội ngũ thực sự giỏi viết mã được tách rời có thể được kiểm tra tốt bằng các thử nghiệm hộp đen và chuẩn bị để sử dụng/gỡ lỗi rất nhiều mocks & khai, không đi xuống đường Nhà máy.
Bất cứ nơi nào bạn đọc về cách các nhà máy tuyệt vời Bạn sẽ thấy một chút cảnh báo về cách các nhà máy có thể không khả thi trong một ứng dụng lớn vì chúng chậm hơn một chút so với đồ đạc.
Nhưng "chậm hơn một chút" thực sự là đơn đặt hàng của cường độ chậm hơn.
Các nhà máy không dễ viết mã dễ dàng hơn so với đồ đạc sử dụng nhãn cho id, miễn là bạn giữ đồ đạc được sắp xếp. Và trong một số trường hợp, các nhà máy khó gỡ lỗi hơn.Chỉ cần tối nay tôi đã chuyển đổi một nhà máy duy nhất thành đồ đạc và thời gian chạy của tệp thử nghiệm đã sử dụng từ 65 giây đến 15 giây, mặc dù chỉ có khoảng 15% thử nghiệm trong tệp thử nghiệm đó sử dụng nhà máy đó.
Nếu bạn sử dụng minitest, bạn có thể chạy thử nghiệm theo thứ tự ngẫu nhiên; điều này sẽ nhanh chóng tiết lộ bất kỳ sự ghép nối dữ liệu giữa các bài kiểm tra. (không chắc chắn nếu rspec có tùy chọn để ngẫu nhiên hóa thứ tự kiểm tra)
Nguồn
2011-02-07 10:00:33
Tôi hoàn toàn đồng ý với webmat. Tôi thực sự đấu tranh với sự hiểu biết cú pháp RSpec bởi vì nó có quá nhiều cú pháp. Nó biến các cụm từ thông thường thành mã nhưng sau đó bạn đã tìm ra những gì nó được cho là phải làm! Đường cong dốc và tôi lười. – srboisvert
Tôi từng hơi nghi ngờ về cú pháp có đường quá, nhưng sau khi đọc http://rdoc.info/gems/rspec-expectations/2.4.0/RSpec/Matchers Tôi thực sự không gặp rắc rối khi viết xác nhận của mình Cú pháp của RSpec. (Có lẽ tài liệu đơn giản trở nên tốt hơn trong 2.5y kể từ câu trả lời của bạn ^^) Thực tế, bây giờ tôi thích sự mong đợi của RSpec tốt hơn Test :: Unit's assertions (và điều đó vẫn không quan tâm đến "khả năng đọc tiếng Anh" -)đặc tính). –