Tôi tìm thấy các cuộc thảo luận về Bạn có kiểm tra thông tin phương pháp riêng tư .
Tôi đã quyết định, trong một số lớp, tôi muốn có các phương thức được bảo vệ, nhưng kiểm tra chúng. Một số phương pháp này là tĩnh và ngắn. Bởi vì hầu hết các phương pháp công khai sử dụng chúng, tôi có thể sẽ có thể loại bỏ các bài kiểm tra một cách an toàn sau này. Nhưng để bắt đầu với cách tiếp cận TDD và tránh gỡ lỗi, tôi thực sự muốn thử nghiệm chúng.
Tôi nghĩ về những điều sau đây:
- Phương pháp Đối tượng như được khuyên trong một câu trả lời dường như là quá mức cần thiết cho việc này.
- Bắt đầu với các phương thức công khai và khi phạm vi bảo hiểm được đưa ra bởi các thử nghiệm cấp cao hơn, hãy chuyển chúng được bảo vệ và loại bỏ các thử nghiệm.
- Kế thừa một lớp với giao diện có thể kiểm tra làm cho các phương thức được bảo vệ trở nên công khai
Đó là thực hành tốt nhất? Có gì khác?
Dường như, JUnit tự động thay đổi các phương thức được bảo vệ thành công khai, nhưng tôi không có cái nhìn sâu hơn về nó. PHP không cho phép điều này thông qua sự phản ánh .