Скажем, у меня есть куча классов, которые имитируют автомобили: Sportscar , Truck и SUV . Все эти классы имеют некоторые публичные методы, такие как start () и stop () , которые они наследуют от абстрактного класса Car . Хотя у них есть свои различия, представьте, что все они разделяют некоторую форму частной функции. Все они могут использовать один и тот же частный метод opentrunk () или pumpfueltoengine () . Я не хочу писать три различных метода OpenTrunk () , поэтому я помещаю их в CAR в качестве защищенного/пакетного метода вместо этого для повторного использования кода.
Согласно тому, что я прочитал до сих пор, чтобы проверить общедоступный интерфейс класса, и сами тесты должны существовать в пакете класса. Эти ранее тривиальные и частные методы в настоящее время принадлежат к достижимому интерфейсу классов внутри пакета, что означает, что они подвергаются тестированию. Мне кажется, эти тесты становятся бесполезными или даже вредными, поскольку они проверяют реализацию, а не поведение.
Что вы делаете по -другому, чтобы избежать этой ситуации?
Подробнее здесь: https://stackoverflow.com/questions/796 ... ts-in-java