Главная » Экстремальное программирование. Разработка через тестирование читать онлайн | страница 20

Читать книгу Экстремальное программирование. Разработка через тестирование онлайн

20 страница из 30

□ нет класса Dollar;

□ нет конструктора;

□ нет метода times(int);

□ нет поля (переменной) amount.

Устраним их одну за другой. (Я всегда ищу некоторую численную меру прогресса.) От одной ошибки мы избавимся, определив класс Dollar:


Dollar

class Dollar


Одной ошибкой меньше, осталось еще три. Теперь нам понадобится конструктор, причем совершенно необязательно, чтобы он что-то делал – лишь бы компилировался.


Dollar

Dollar(int amount) {

}


Осталось две ошибки. Необходимо создать заготовку метода times(). Снова мы выполним минимум работы, только чтобы заставить тест компилироваться:


Dollar

void times(int multiplier) {

}


Теперь осталась только одна ошибка. Чтобы от нее избавиться, нужно создать поле (переменную) amount:


Dollar

int amount;


Отлично! Теперь можно запустить тест и убедиться, что он не выполняется: ситуация продемонстрирована на рис. 1.1.

Загорается зловещий красный индикатор. Фреймворк тестирования (JUnit в нашем случае) выполнил небольшой фрагмент кода, с которого мы начали, и выяснил, что вместо ожидаемого результата «10» получился «0». Ужасно…

Правообладателям