Может иметь смысл проверить частные методы. Стандартный способ сделать это, имеющий ряд преимуществ, заключается в следующем:
- Убедитесь, что тестовый код находится в том же пакете, что и код, который он пытается протестировать. Это не означает тот же каталог; например, имейте
src/main/java/pkg/MyClass.java
и src/test/java/pkg/MyClassTest.java
. - . Аннотируйте их с помощью
@VisibleForTesting
(из гуавы ), если вам нужна какая-либо запись об этом.
Отдельно от этого, пространство ввода для методов publi c (publi * 1022) * в смысле: это часть моего API и определяет точки доступа, где внешний код вызывает мой код) обычно представляет собой некоторый список точек входа ... если он у вас есть. Чаще всего такого определения нет вообще. Можно сказать, что все методы publi c во всех типах publi c неявно образуют список (то есть, что ключевое слово public
подразумевает, что оно предназначено для использования внешним кодом), которое затем по тавтологии устанавливает, что любая публикация c метод имеет правильную подпись. Не очень полезное определение. На практике ключевое слово public
не обязательно должно означать «это доступно через API». Различные модульные системы (такие как Jigsaw или OSGi) имеют решения для этого, как правило, позволяя вам объявлять определенные пакеты как на самом деле publi c.
С помощью такого инструментария «деревья» встряхивают ваши методы publi c для указания из того, что им больше не нужно публиковаться c, имеет смысл. Без них ... ты не сможешь этого сделать. Существует такое понятие, как «этот метод никогда не вызывается в моей кодовой базе, но он доступен для внешних абонентов; абоненты, которых у меня нет в наличии здесь, и дело в том, что это выпущено, и, возможно, есть проекты, которые еще даже не начали писать, которые предназначены для вызова этого ».
Предполагается, что вы делаете Если у вас будет идея о том, как трястись деревья, вы все равно можете оставить их под этим углом «хорошо, может быть, не сегодня, а, возможно, завтра». Если это применимо, оставьте это внутри. Если вы не можете представить ни одного случая использования, когда внешний код нуждается в доступе к нему, просто удалите его. Если это действительно нужно восстановить, эй, всегда есть история в управлении версиями.