Добавил:
СПбГУТ * ИКСС * Программная инженерия Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
55
Добавлен:
23.03.2022
Размер:
1.37 Mб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего образования «Санкт-Петербургский государственный университет телекоммуникаций им. проф. М. А. Бонч-Бруевича»

(СПбГУТ)

Факультет инфокоммуникационных сетей и систем Кафедра программной инженерии и вычислительной техники

ПРАКТИЧЕСКАЯ РАБОТА №3

по дисциплине «Тестирование программного обеспечения»

студент гр. ИКПИ-84

_______________

Коваленко Л. А.

доцент каф. ПИиВТ

_______________

к.т.н. Лукша И. И.

Санкт-Петербург

2022

1. Постановка задачи

На основе понимания состава и содержания ранее прочитанной лекции по основным положениям автоматизации тестирования, осуществить разработку и проверку выполнения сценариев автоматизированного тестирования с использованием системы управления конфигурациями Ansible,

написанной на алгоритмическом языке программирования высокого уровня

Python и использующей декларативный язык YAML, реализующий разметку данных для описания действий по тестированию, автоматизации настройки и развертывания программного обеспечения для ОС Linux и Windows.

Ansible поддерживает работу с сетевыми устройствами, на которых установлен Python версии 2.4 и выше по SSH или по WinRM соединению без установки агента/клиента на целевые системы.

Администратор Ansible создаёт определённые "плейбук" (англ. playbook; play — игра, пьеса; book — книга) в формате YAML с описанием требуемых состояний управляемой системы, в котором она должна находиться в конкретный момент времени, включая установленные пакеты, запущенные службы, созданные файлы и многое другое. Ansible проверяет, что каждый из ресурсов системы находится в ожидаемом состоянии и, при необходимости,

пытается исправить состояние ресурса, если оно не соответствует ожидаемому. Для выполнения задач используется система модулей. Каждая задача представляет собой имя задачи, используемый модуль и список параметров, характеризующих задачу.

Ansible поддерживает переменные, фильтры обработки переменных,

условное выполнение задач, параллелизацию, шаблоны файлов, адреса и настройки целевых систем содержатся в файлах «инвентаря» (inventory),

поддерживается группирование, а для реализации набора сходных задач существует система ролей.

Использование Ansible заключается в его непосредственной установке и настройке соответствующих конфигурационных файлов.

2

2. Ход работы

2.1. Работа с playbook «1.yml»

Работа с playbook «1.yml» приведена на рис. 1-5.

Рисунок 1. Просмотр содержимого 1.yml и его исполнение

Рисунок 2. Исполнение 1.yml в подробном виде (1)

3

Рисунок 3. Исполнение 1.yml в подробном виде (2)

Рисунок 4. Исполнение 1.yml в подробном виде (3)

4

Рисунок 5. Исполнение 1.yml в подробном виде (4)

В случае отсутствия файла «/etc/services» результат приведен на рис. 6.

Рисунок 6. Ошибка, файл «/etc/services» отсутствует

5

2.2. Работа с playbook «2.yml»

Работа с playbook «2.yml» приведена на рис. 7-12.

Рисунок 7. Просмотр содержимого 2.yml и его исполнение

Рисунок 8. Исполнение 2.yml в подробном виде (1)

6

Рисунок 9. Исполнение 2.yml в подробном виде (2)

Рисунок 10. Исполнение 2.yml в подробном виде (3)

7

Рисунок 11. Исполнение 2.yml в подробном виде (4)

Рисунок 12. Исполнение 2.yml в подробном виде (5)

8

После замены «body» на «bo1dy» результат исполнения 2.yml приведен

на рис. 13.

Рисунок 13. Просмотр содержимого измененного 2.yml и его исполнение с ошибкой по причине того, что «bo1dy» отсутствует в исходном коде страницы

3.Заключение

Врезультате выполнения практической работы мы ознакомились с

системой управления конфигурациями Ansible: реализовали два playbook и

проверили их работу.

9