У меня есть следующий класс:
public class LegacyClass()
{
public LegacyClass(final int aModeOfOperation)
{
if (aModeOfOperation == 0)
{
addSomeValues();
addSomeValues();
}
else if (aModeOfOperation == 1)
{
addSomeValues();
}
}
private void addSomeValues()
{
}
}
Я хочу написать модульный тест, который бы проверял, что
- вызов
LegacyClass(0)
приводит к тому, что частный методaddSomeValues
вызывается 2 раза и - вызов
LegacyClass(1)
вызывает однократный вызов закрытого методаaddSomeValues
.
Я знаю, что можно использовать объекты-шпионы в Mockito/PowerMockito для подсчета количества вызовов частных методов, но, насколько я знаю, эти подходы работают, только если рассматриваемые методы вызываются после построения тестируемого класса. .
Можно ли написать модульный тест, описанный выше, без изменения конструктора LegacyClass
?
addSomeValues()
вызывается дважды? Тестирование «черного ящика» › тестирование «белого ящика» даже на уровне класса. - person vikingsteve   schedule 28.11.2013LegacyClass
, ваши тесты все равно будут работать зеленым цветом! - person vikingsteve   schedule 28.11.2013