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

Все тесты (All Tests)

Все тесты (All Tests)

Как можно запустить все тесты вместе? Создайте тестовый набор, включающий в себя все имеющиеся тестовые наборы, – один для каждого пакета (package) и один, объединяющий в себе все тесты пакетов для всего приложения.

Предположим, вы добавили подкласс класса TestCase и в этот подкласс вы добавили тестовый метод. В следующий раз, когда будут выполняться все тесты, добавленный вами тестовый метод также должен быть выполнен. (Во мне опять проснулась привычка действовать в стиле TDD – должно быть, вы заметили, что предыдущее предложение – это эскиз теста, который я, наверное, написал бы, если бы не был занят работой над данной книгой.) К сожалению, в большинстве реализаций xUnit, равно как и в большинстве IDE, не поддерживается стандартный механизм запуска абсолютно всех тестов, поэтому в каждом пакете необходимо определить класс AllTests, который реализует статический метод suite(), возвращающий объект класса TestSuite. Вот класс AllTests для «денежного» примера:

public class AllTests {

public static void main(String[] args) {

junit.swingui.TestRunner.run(AllTests.class);

}

public static Test suite() {

TestSuite result = new TestSuite("TFD tests");

result.addTestSuite(MoneyTest.class);

result.addTestSuite(ExchangeTest.class);

result.addTestSuite(IdentityRateTest.class);

return result;

}

}

Вы также должны включить в класс AllTests() метод main(), благодаря чему класс можно будет запустить напрямую из IDE или из командной строки.

Оглавление книги


Генерация: 1.709. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз