Конфигурим тесты

Изменение различных параметров в тестах – обычное дело. Передать логин-пароль, изменить адрес тестовой машинки, сервера БД ну и всё такое. Не так давно мы зарелизили библиотечку properties, которая является удобной надстройкой над apache beans. Вот примеры задач, которые я решаю с её помощью:

  1. Запустить тест, поменяв в нём один параметр. Properties умеют подтягивать свои значения из переменных окружения, поэтому я указываю при запуске теста -Dимя_параметра=… и тест подхватит указанное значение. Очень удобно когда разрабатываешься на dev-окружении, а все дефолтные настройки заточены под пред-продакшн.
  2. Запустить тесты, поменяв в них все параметры под конкретное окружение. Где-то в тестах Properties я запилил имплементацию мульти-файловых настроек. Где-то там же валяется дока с описанием, как это работает. Если в двух словах – записываешь несколько файлов со всеми твоими настройками для разных окружений. При запуске теста передаёшь в переменную окружения файл, из которого нужно брать настройки. Можно хранить все конфигурации в одном месте.
  3. Хранение тестовых данных. Даже если какие-то данные для теста статические, мне просто удобно хранить их в этих же java-классах.
  4. Кастомные запуски тестов из других скриптов. Билд-скриптом или джобой делается сборка, деплоится на виртуалку, все параметры свеже-созданного окружения прокидываются в тесты.

В общем берите, пользуйтесь. Подключать можно релизную версию 1.3 либо 1.4-SNAPSHOT. Как всегда – будем рады пулл-реквестам на гитхабе (баги и фич-реквесты на худой конец тоже сгодятся). Ах да, самое главное: https://github.com/yandex-qatools/properties =)

comments powered by Disqus