Skip to end of metadata
Go to start of metadata

Проект содержит два основных конфигурационных файла. Первый это log4j.xml  файл для настройки логгирования, он не будет здесь разбираться, так как не представляет ценности. Второй файл testng.xml  файл конфигурации TestNG. Его название не фиксировано. Но данное название общепринято и считается хорошим тонном. Разберем структуру этого файла. 

Текст заключенный в <!- ->  является комментарием. Разберем все тэги и их значения по порядку. 

Тэг suite указывает на коллекцию тестов. Применяется для того чтобы объединить тесты с общими параметрами и применить их сразу ко всем тестам. Далее внутри него описывается несколько тэгов parameter. В этом тэге описываются параметры которые будут доступны в тестах. Описание параметра очень простое, указывается имя (по которому данный параметр будет в дальнейшем доступен) и значение этого параметра.

Описанные параметры: 

  • Первый "блок" это параметры для удаленного сервера Selenium (selenium-server-url, selenium-driver-type). Первый указывает URL где располагается сервер, а второй типа драйвера который будет использоваться. По значению параметра можно догадаться что будет использоваться соответствующий драйвер для тестирования (соответственно данный браузер должен быть установлен на сервере, только если не указан параметр html который не требует браузера. Но данный драйвер имеет свою реализацию JavaScript, и если предполагается тестирование JavaScript, то лучше использовать драйверы необходимых браузеров).
  • Второй "блок" содержит общие параметры для приложения, в данном случае адрес стартовой страницы.
  • Третий "блок" параметры базы данных. Эти параметры необходимы для подключения к базе, имя класса драйвера, имя пользователя в базе (если база расположена не на том же компьютере, то у пользователя должны быть права для удаленного подключения), пароль для этого пользователя.
  • Четвертый "блок" описывает имена и пароли для двух пользователей (простой пользователь и администратор), который понадобятся в тестах.

Тэг test описывает какие тесты будут входить в данную коллекцию. Внутри него можно использовать разный способы описания. Например можно описать с  помощью тэгов classes и class

В данном случае параметры коллекции тестов применяться только к классам описанным в тэге class. В примере рассмотренном в начале используется тэг package он позволяет применить параметры ко всем классам находящимся в данном пакете (директории). Также есть и другие тэги (include, exclude ...) которые помогут правильно определить тесты в коллекции, про них можно почитать на официально сайте TestNG.

  • No labels