@DeNissss4444

Как получить доступ к методу класса с модификатором private static из другого класса?

У меня есть условный класс А у которого есть private static метод.
public class A{
 public static void main(String[] args) {
      String c = "abc";
      int result = methodB(c);
}

private static int methodB(String c) {
/ * */
}

}

Класс рабочий и теперь мне надо написать тесты для проверки и что-то я не могу сообразить как я могу написать тест для проверки метода "methodB" если у него стоит private static. Можете подсказать что лучше делать в такой ситуации?
  • Вопрос задан
  • 177 просмотров
Решения вопроса 1
BorLaze
@BorLaze
Java developer
DeNissss4444, тестировать можно (и нужно) только то, что из класса "доступно миру".

Тесты приватных методов не нужны по определению. Сегодня метод есть, завтра его удалили, разбив функционал на две части. Или поменяли сигнатуру. Или... в общем, что там творится "под капотом", в приватах класса - дело только и исключительно этого класса.

Значение имеют только доступные извне методы.

Грубо говоря - если у тебя есть публичный метод сортировки массива пузырьком sort(), и в нем вызывается приватный метод swap(), то тебе не нужно тестировать, правильно ли работает обмен. Тестируй сортировку. Потому что завтра ты перепишешь сортировку на что-то более кошерное, и у тебя вместо swap() появится какой-нибудь join().

Важно лишь, чтобы sort() возвращал правильное значение.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы