Тема: РАЗРАБОТКА ПРОГРАММНОГО ИНСТРУМЕНТА ДЛЯ АВТОМАТИЗАЦИИ РЕГРЕССИОННОГО ТЕСТИРОВАНИЯ ОБЛАЧНЫХ ПРОГРАММНЫХ РЕШЕНИЙ
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
1 Функциональные возможности облачных сервисов 6
1.1 Резервное копирование данных 6
1.2 Восстановление данных 8
1.3 Экспортирование данных 10
2 Обзор тестируемых сервисов 12
3 Реализация тестовых сценариев 14
3.1 Проверка функции Restore 14
3.2 Проверка функции Export 16
3.3 Проверка функции Item level 16
4 Архитектура программного решения 18
4.1 Пакет Accountcleaner 19
4.2 Пакет Compare 19
4.3 Пакет Datamodel 20
4.4 Пакет Exception 20
4.5 Пакет Scenarios 21
4.6 Пакет API 22
4.7 Пакет Database 23
5 Реализация программной библиотеки 24
5.1 Инструменты разработки 24
5.2 Реализация класса Step 25
Заключение 37
Список использованных источников 38
Приложение
📖 Введение
По данным компании IDC самой распространенной облачной моделью является SaaS-платформа [2]. В данной среде предоставляется возможность для хранения персональных данных, офисный пакет документов для работы (Google Doc, Office 365 и др.), удаленное управление, безопасное разделение данных для корпоративной разработки.
Однако данные платформы имеют ряд недостатков:
• данные, которые были перемещены в мусорную корзину, удаляются по истечении определенного количества дней без возможности восстановления (Office 365 хранит данные 30 дней, SharePoint и OneDrive от 30 до 90 дней [3]);
• нет резервного восстановления данных от случайного удаления данных пользователем или злоумышленником, которые были в мусорной корзине.
Для устранения данных недостатков используются облачные сервисы, которые предоставляют возможность для резервного копирования данных из SaaS-платформ. Данные сервисы обладают следующими функциональными особенностями:
1. Backup (резервное копирование данных);
2. Restore (восстановление данных);
3. Export (экспортирование данных);
4. Item level restore/export (выборочное выполнение restore/export).
Все вышеперечисленные функции взаимодействуют с
пользовательскими данными, следовательно, облачные сервисы должны придерживаться принципа сохранения целостности данных, который является одним из основных принципов стандарта об информационной безопасности ISO 27001 [4]. Для того, чтобы обеспечить точность и полноту пользовательских данных необходимо проводить тестирование. Для поддержания целостности данных важно, чтобы в основных операциях, использующих информацию пользователей, не происходил регресс. В основном это происходит при добавлении нового функционала системы. Поэтому принято проводить регрессионное тестирование.
Регрессионное тестирование — это набор тестов, направленных на обнаружение дефектов в уже протестированных участках приложения [5]. Однако стоит вопрос в применении методов автоматизации для данного типа тестирования, так как из ежегодного отчета World Quality Report (2018-19) следует, что необходимо максимально автоматизировать регрессионное тестирование [6]. Так, например, компания, занимающаяся тестированием ПО “alqa”, смогла на 40% уменьшить трудозатраты, внедрив автоматизацию в регрессионное тестирование [7]. Однако в сфере тестирования облачных сервисов автоматизация регрессионного тестирования остается открытой задачей.
Таким образом, целью данной дипломной работы является создание инструмента для автоматизации регрессионного тестирования облачных сервисов, позволяющих хранить данные SaaS-платформ для восстановления информации в случае её утраты.
✅ Заключение
• резервное копирование данных;
• восстановление данных;
• экспортирование данных.
Для достижения поставленной цели были выполнены следующие задачи:
1. проанализированы программные решения, которые поддерживают основные функции SaaS-платформ для определения требований к программному решению;
2. разработаны тестовые сценарии, проверяющие базовые функции облачных сервисов;
3. реализованы программные модули для автоматизации тестирования;
4. разработана библиотека для регрессионного тестирования облачных сервисов.
Данный инструмент был применен для автоматизации регрессионного тестирования в компании CloudAlly и в ходе тестирования были обнаружены две ошибки в тестируемом программном продукте.
Результаты выполнения данной выпускной квалификационной работы опубликованы в открытом доступе в репозитории GitLab и доступны по ссылке: http ://gititis.kpfu.ru/NRSaitgareev/SaaSAutoTest.git.



