Özel yöntemi bilgilendirici test ediyor musunuz?
Bazı sınıflarda korunan yöntemlere sahip olmak istediğime karar verdim, ancak bunları test ediyorum. Bu yöntemlerin bazıları statik ve kısadır. Genel yöntemlerin çoğu bunları kullandığından, muhtemelen testleri daha sonra güvenle kaldırabileceğim. Ancak bir TDD yaklaşımı ile başlamak ve hata ayıklamaktan kaçınmak için onları gerçekten test etmek istiyorum.
Aşağıdakileri düşündüm:
- Yöntem Bir cevapta tavsiye edilen nesne bunun için aşırıya kaçmış gibi görünüyor.
- Herkese açık yöntemlerle başlayın ve daha yüksek düzey testlerle kod kapsamı verildiğinde, bunları korumalı hale getirin ve testleri kaldırın.
- Korumalı yöntemleri herkese açık hale getiren test edilebilir bir arayüzle bir sınıfı devralma
Hangisi en iyi uygulama? Başka bir şey var mı?
Görünüşe göre, JUnit korumalı yöntemleri herkese açık olacak şekilde otomatik olarak değiştiriyor, ancak daha derinlemesine bir bakışım yoktu. PHP yansıma yoluyla buna izin vermez .