
Готовые практические работы (на оценку 5) / Практическая работа 3
.pdfМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,
СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего образования «Санкт-Петербургский государственный университет телекоммуникаций им. проф. М. А. Бонч-Бруевича»
(СПбГУТ)
Факультет инфокоммуникационных сетей и систем Кафедра программной инженерии и вычислительной техники
ПРАКТИЧЕСКАЯ РАБОТА №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