Руководство администратора
Для использования приложения вам потребуется составить один или несколько файлов с тестами. В качестве формата для файлов используется YAML.
Структура файла представляет собой набор параметров вида ключ: значение
. Основные параметры должны быть указаны в каждом файле, параметры модуля задаются в зависимости от типа тестирования.
На данный момент в приложении доступны 3 модуля:
rest_api
: для взаимодействия с REST API тестируемого сервиса;html
: для web тестов;bash
: для использования командной оболочки.
Основные параметры
name
Необязательное поле. Произвольное имя файла с тестами
module
Тип тестирования, поддерживается 3 значения: rest_api
, bash
, html
server_ip
IP-адрес тестируемого сервиса.
alias
Необязательное поле. При загрузке файла в приложение заданное значение будет отображено в столбце Псевдоним
.
authentication
Необязательное поле. Учетные данные для аутентификации
Модуль rest_api
base url
Точка входа API.
urls
Запросы к ресурсам API.
Модуль html
base url
Базовый URL сервиса.
pages
Перечень URL и параметров для тестирования.
Модуль bash
commands
Набор выполняемых команд оболочки и проверок результата выполнения.
Описание параметров
alias
alias
Необязательное поле. При загрузке файла в приложение заданное значение будет отображено в столбце Псевдоним
.
Тип параметра: Основной.
Пример:
alias: "Псевдоним теста"
authentication
authentication
Учетные данные для аутентификации.
Тип параметра: Основной.
Поддерживает следующие подпараметры:
authentication:auth
authentication:login
authentication:username
authentication:password
authentication:auth
authentication:auth
Позволяет указать тип аутентификации, если на конечном сервисе доступно несколько способов (например: внутренняя база данных, LDAP, Radius и т.д.).
Тип параметра: html
, rest_api
Пример:
authentication:
auth: internal
authentication:login
authentication:login
Имя учетной записи.
Тип параметра: bash
, html
Пример для модуля html
:
authentication:
login: user
Для модуля bash
указывается в формате пользователь@адрес_сервиса
:
authentication:
login: [email protected]
authentication:username
authentication:username
Имя учетной записи.
Тип параметра: rest_api
Пример:
authentication:
username: user
authentication:password
authentication:password
Пароль учетной записи.
Тип параметра: bash
, html
, rest_api
Пример:
authentication:
password: password
base url
base url
URL для доступа к тестируемому сервису.
Тип параметра: html
, rest_api
Для модуля html
указывается базовый URL сервиса:
base url: https://10.1.1.10/
Для модуля rest_api
указывается точка входа API:
base url: https://10.1.1.10/rest/
commands
commands
Набор выполняемых команд оболочки и проверок результата выполнения, каждый элемент передается в виде списка значений.
Тип параметра: bash
Список передаваемых значений:
command
: выполняемая команда оболочки;expect_contains
: строка, которую должен содержать результат выполнения команды. Если параметр пуст, результат проверки всегда будет успешным. Регистр символов при проверке игнорируется.
Пример:
commands:
- command: uname
expect_contains: linux
- command: systemctl status tomcat9.service
expect_contains: active (running)
module
module
Тип используемого для тестирования модуля приложения.
Тип параметра: Основной.
Возможные значения параметра:
rest_api
bash
html
Пример:
module: rest_api
name
name
Произвольное имя файла с тестами.
Тип параметра: Основной.
Пример:
name: "Стандартный тест rest-api на сервере 10.1.1.10"
pages
pages
Перечень URL и параметров для тестирования, каждый элемент передается в виде списка значений.
Тип параметра: html
Список передаваемых значений:
url
: путь к тестируемой странице, полный URL формируется добавлением этого значения к параметруbase url
;method
: метод поиска веб-элемента, возможные значения:id
,name
,xpath
,linktext
,tag
,class
,css
;value
: значение для поиска, используется для всех методов поиска кромеlinktext
;text
: текст ссылки для поиска, используется с методомlinktext
;click
: нажатие на веб-элемент, возможные значения:false
илиtrue
.
Расшифровка значений method
:
id
: поиск веб-элемента по атрибуту id;name
: поиск веб-элемента по атрибуту name;xpath
: поиск веб-элемента по XPath;linktext
: поиск гиперссылки по тексту (частичное совпадение);tag
: поиск веб-элемента по HTML-тегу;class
: поиск веб-элемента по атрибуту class;css
: поиск веб-элемента с использованием синтаксиса CSS selector.
Пример:
pages:
- url: page/login
method: tag
value: body
text:
click: false
server_ip
server_ip
IP-адрес тестируемого сервиса.
Тип параметра: Основной.
Пример:
server_ip: '10.1.1.10'
urls
urls
Запросы к ресурсам API, каждый элемент передается в виде списка значений.
Тип параметра: rest_api
Список передаваемых значений:
url
: ресурс API, полный URL формируется добавлением этого значения к параметруbase url
;method
: метод HTTP, возможные значения:get
,put
,post
,delete
;body
: набор данных, передаваемых в запросе, в форматеключ: значение
, определяются API тестируемого сервиса;details
: необязательное поле, позволяет выполнять запросы к вложенным элементам, если ресурс является коллекцией. Каждый элемент передается в виде списка значенийurl
,method
,body
.
Пример:
urls:
- url: api-endpoint1/
method: post
body:
key1: value1
key2: value2
- url: api-endpoint2/
method: put
body:
key1: value1
key2: value2
details:
- url: detail/
method: put
body:
key1: value1
Last updated