Cách tốt nhất để kiểm tra đơn vị các phương thức được bảo vệ và riêng tư trong Ruby, sử dụng Test::Unit
khung Ruby tiêu chuẩn là gì?
Tôi chắc chắn rằng ai đó sẽ lên tiếng và khẳng định một cách giáo điều rằng "bạn chỉ nên thử nghiệm các phương thức công khai; nếu nó cần thử nghiệm đơn vị, thì nó không nên là một phương pháp được bảo vệ hoặc riêng tư", nhưng tôi không thực sự quan tâm đến việc tranh luận về điều đó. Tôi đã có một số phương thức được bảo vệ hoặc riêng tư vì những lý do chính đáng và hợp lệ, những phương thức riêng tư / được bảo vệ này phức tạp vừa phải và các phương thức công khai trong lớp phụ thuộc vào các phương thức được bảo vệ / riêng tư này hoạt động chính xác, do đó tôi cần một cách để kiểm tra các phương pháp được bảo vệ / riêng tư.
Một điều nữa ... Tôi thường đặt tất cả các phương thức cho một lớp nhất định vào một tệp và đơn vị kiểm tra cho lớp đó trong một tệp khác. Lý tưởng nhất, tôi muốn tất cả các phép thuật thực hiện chức năng "kiểm tra đơn vị các phương thức được bảo vệ và riêng tư" này vào tệp kiểm tra đơn vị, chứ không phải tệp nguồn chính, để giữ cho tệp nguồn chính đơn giản và dễ hiểu nhất có thể.