Поэтому я чрезвычайно новичок в тестировании программного обеспечения, и я рассматриваю добавление нескольких тестов в одно из моих приложений. У меня есть открытый метод addKeywords(), который по пути вызывает частный метод removeInvalidOperations(). Этот частный метод вызывает вызовы внешнего API и составляет ~ 50 строк кода. Поскольку я считаю это несколько сложным методом, я бы хотел проверить это, не делая этого, вызвав метод addKeyword(). Однако это не представляется возможным (по крайней мере, хотя JUnit).
Информация, которую я рассмотрел, предполагает, что желание испытать частные методы может быть запахом кода. Некоторые люди предполагают, что это может быть признаком того, что это нужно реорганизовать в отдельный класс и обнародовать. Кроме того, есть предложения, что, если вам действительно нужно, вы можете внести изменения в свой производственный код, например. измените видимость частного метода.
Я действительно не понимаю, почему у меня проблема с моим текущим дизайном кода, но также не нравится идея редактирования моего производственного кода в соответствии с моими потребностями в тестах.
Как я уже сказал - я довольно новичок в тестировании, поэтому любая помощь очень ценится. Также, пожалуйста, дайте мне знать, если есть какая-либо дополнительная информация, которую я могу предоставить, чтобы помочь с ответами.