*************Recource files *************
Основная цель этого проекта является:
- ускорить процесс создание автоматических тестов
- минимизация сопутствующих знаний (быстрая одоптация при знакомстве с проектом)
- решение проблеммы экспоненциального роста усилий на поддержание автоматических тестов при увеличении их количества
- предоставление подробной информации о працессе выполнения тестов (видео, скриншоты, логи)
Ниже приведен список обязательных файлов необходимых для запуска проекта. Структуру их расположения смотри в CyberCat-test
Locators_en.properties - содержит локализованные локаторы для XPath (смотри главу "Механизм локализации") MetaData.properties - этот файл содержит параметры авторизации для некоторых модулей системы (на данный момент не используется и в последующих версиях продукта будет удален или переработан) pageObjectContext.xml - это файл описывыющий способ инициализации обектов AbstractPageObject (смотри главу Page Objects) test.properties - конфигурационный файл содержащий основные настройки системы (смотри главу "конфигурационный файл" )
***Конфигурационный файл.
Этот файл сожержит различные настройки неодходимые для работы проекта. По умолчанию фреймворк ищет test.properties файл: test ---resources --test.properties , но можно изменить название файла и его положение в структуре проекта используя системную переменную в command line -Dconfig.properties=[my project].properties. теперь подробнее о properties:
Файл настроек делится на две секции, обязательные (системные) настройки и настройки определенные пользователем. Все обязательные настройки перечисленны в файле /CyberCat-test/src/test/resources/test.properties.null этото файл не используется системой, а нужен только для того чтобы показать минимальный набор настроек необходимых для запуска системы.
Web driver settings в этом блоке описывается способ достука к selenium driver
this option works with no-remote web driver configuration only эта опция необходима лиш в том случае если вы используете кастомный profile для работы с browser (более подробную информацию смотри на сайте seleniumHQ). при работе с remote selenium driver указывать custome profile не имеет смысла и способ конфигурации в этом случае описан на сайте seleniumHQ.
Site language эта опция указывает язык локализации сайта и используется в механизме локализации который будет описан в отдельной главе.
Jira Adddon этот блок используется для интеграции с Jira issue tracking system. Если вы не используете этот механизм - просто оставте строки не заполнеными. Подробнее информация о модуле интеграции изложена в отдельной главе.
Version control Этот блок настроек отвечае тзза настройку системы контроля версий. На данный момент контроль механизм контроля версии работает с классами имплементирующими IFeature, IIntegrationService инрефейсы. Маркерным интерфейсом для для этого механизма является IVersionControl интерфейс. Если вы не хотите использовать механизм в данный момент можно задать следующие настройки:
app.version=1 version.control.root.package=org.myproject
Подробно о работе этого механизма будет раказана в отдельной главе.
Так-же ждесь вы можете добавить любые настройки которые посчитаете необходимыми. Любые настройки загруженные в систему можно получить при помощи методов класса AutomationMain getProperty(String) getPropertyBoolean(String) getPropertyLong(String) getPropertyUrl(String)
где String это название опции в конфигурационном файле
например:
AutomationMain.getProperty("version.control.root.package") вернет строку содержащую "org.myproject"
************** Test Case****************
*************** Feature ***************
Page Objects
*************Integration Service ******************
Механизм локализации