Я знаю, что довольно сложно протестировать многие возможности языка Java. Например, было бы невозможно проверить закрытые переменные класса или аналогичные методы. Обычно я занимаюсь этим, создавая вложенный класс, где этот вложенный класс является модульным тестом, таким образом:
public class MyClass{
private String somePrivate;
// omitted for brevity
@RunWith(MockitoJUnitRunner.class)
public static class MyClassUnitTest{
@InjectMockito
MyClass myclassMocked;
// so forth...
}
}
, таким образом, нет необходимости в рефлексии / powermock или других!
Эта структура помогает мне, чтобы проверить все недоступные члены или методы класса. Но похоже, что я также должен сделать автоматическую сборку, где maven будет искать эти вложенные классы для модульных тестов и запускать его, когда я mvn clean test
в развертывании.
Я пытался найти какой-либо ответ на это, но безрезультатно, я не смог найти ни одного spe c из maven или maven-surefire-plugin, чтобы сказать, что «эй, пожалуйста, посмотрите на эти вложенные классы в папке src / main и отметьте их как модульный тест». Кроме того, я использую Springboot для упаковки всего моего проекта (таким образом, большинство зависимостей связано с Spring)
Кто-нибудь готов к решению?