2013-05-06 5 views
0

Возможно ли «подавать» ожидаемые ответы от базовых методов на классы, тестируемые в JUnit? Конечно, вы можете разбрызгать код с помощью if -statements, выполняющего что-то еще, в случае, если код «находится под тестированием» или ввести дополнительный пакет объектов, либо пересылающий запрос объекту (обычное обследование), либо делая это «что-то еще», но это оставляет ощущение вонючего кода и лишних ошибок. Есть ли лучший подход, чтобы действительно сохранить код теста из кода программы?Можно ли ввести ответы метода в тестах JUnit?

Я представляю себе что-то вроде , если это ClassUnderTest.doSomething() вызовов ClassB.getValue(key) не называет эту функцию на всех, а, значение рук foo как воображаемое возвращаемое значение ClassB.getValue() обратно ClassUnderTest.doSomething()? Можно ли это сделать? Могу ли я получить доступ к «ключу» позже, чтобы узнать, задал ли мой метод правильный вопрос? (См.: Я не хочу проверять функциональность ClassB здесь, как раз сам метод `doSomething().)

ответ

2

Я думаю, что вы ищете насмешливые рамки.

Самым популярным в эти дни является Mockito.

+0

+1 или EasyMock. –