Детальная информация

Название: Разработка инструментов мокирования Feature Toggle и внешнего API для автоматизированных тестов на платформе Android: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_01 «Технология разработки и сопровождения качественного программного продукта»
Авторы: Дюрдева Дарья Сергеевна
Научный руководитель: Маслаков Алексей Павлович
Организация: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Выходные сведения: Санкт-Петербург, 2024
Коллекция: Выпускные квалификационные работы; Общая коллекция
Тематика: Android; MockWebServer; feature toggle; тестовые дублеры; мокирование; test double; mocking
Тип документа: Выпускная квалификационная работа бакалавра
Тип файла: PDF
Язык: Русский
Уровень высшего образования: Бакалавриат
Код специальности ФГОС: 09.03.04
Группа специальностей ФГОС: 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2024/vr/vr24-3019
Права доступа: Доступ по паролю из сети Интернет (чтение)
Дополнительно: Новинка
Ключ записи: ru\spstu\vkr\30402

Разрешенные действия:

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа: Анонимные пользователи

Сеть: Интернет

Аннотация

Тема выпускной квалификационной работы: «Разработка инструмен-тов мокирования Feature Toggle и внешнего API для автоматизированных тестов на платформе Android». Целью работы является разработка нового подхода для работы с feature toggle в инструментальных Android тестах портала «Одноклассники», а так-же рассмотрение возможности интеграции инструмента мокирования внешнего API с учетом специфики проекта и оценка его эффективности. В данной работе был произведен анализ существующих инструментов для мокирования внешнего API в автотестах, приведено обоснование выбо-ра используемой библиотеки, сделанного с учетом специфики приложения, а также были сформулированы требования к новому подходу мокирования feature toggle, на основе текущих проблем. В ходе выполнения работы были реализованы аннотации позволяю-щие управлять значением feature toggle из автотестов. Также на основе су-ществующих форматов записи конфигурации значения feature toggle и ар-хитектуры взаимодействия приложения с PMS, был реализован алгоритм позволяющий проводить аудит, с целью актуализации используемых в ав-тотестах значений feature toggle и зависящих от них тестовых сценариев. Была произведена базовая настройка мок-сервера и написаны первые тесто-вые сценарии с его использованием. Отдельное внимание было уделено оценке эффективности использования мокирования внешнего API. Результатом работы стал усовершенствованный способ мокирования feature toggle в автотестах, а также поддержка возможности писать автоте-сты с использованием мокирования внешнего API.

The topic of the final qualifying work: «Development of Feature Toggle and external API mocking tools for automated tests on the Android Platform». The goal of the work is to develop a new approach for working with feature toggles in instrumental Android tests for the «Odnoklassniki» portal, as well as to consider the possibility of integrating an external API mocking tool considering the projects specifics and evaluating its effectiveness. The paper includes an analysis of existing tools for mocking external APIs in automated tests, justification for the choice of the library used, considering the applications specifics. It also formulates requirements for a new feature toggle mocking approach based on current issues. During the project implementation, annotations were implemented to man-age feature toggle values from automated tests. An algorithm was developed based on existing configuration value formats for feature toggles and the applications interaction architecture with PMS to conduct an audit to update the values of fea-ture toggles used in automated tests and their dependent test scenarios. Basic setup of a mock server was performed, and initial test scenarios were written using it. Special attention was given to evaluating the effectiveness of using external API mocking. The outcome of the work was an improved method of mocking feature tog-gles in automated tests and support for writing tests using external API mocking.

Права на использование объекта хранения

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все Прочитать
Интернет Авторизованные пользователи СПбПУ Прочитать
-> Интернет Анонимные пользователи

Оглавление

  • РЕФЕРАТ
  • СОДЕРЖАНИЕ
  • ВВЕДЕНИЕ
  • ГЛАВА 1. ОБЗОР И СРАВНЕНИЕ СУЩЕСТВУЮЩИХ РЕШЕНИЙ
    • 1.1. Изучение тестовых дублеров
    • 1.2. Обзор существующих инструментов мокирования внешнего API
    • 1.3. Выявление существующих проблем в текущем подходе работы с feature toggle
    • 1.2. Требования к новому подходу работы с feature toggle
  • ГЛАВА 2. ОБОСНОВАНИЕ ВЫБОРА ТЕХНОЛОГИЙ И СРЕДСТВ РАЗРАБОТКИ
    • 2.1. Язык программирования
    • 2.2. Система контроля версий и репозиторий
    • 2.3. Система сборки проекта
    • 2.4. Фреймворк для тестирования
    • 2.5. СI/CD сервер
    • 2.6. Инструмент для мокирования внешнего API
  • ГЛАВА 3. ПРОЕКТИРОВАНИЕ И АРХИТЕКТУРА
    • 3.1. Архитектура работы Android приложения с PMS
    • 3.2. Архитектура тестового окружения
    • 3.3. Архитектура работы тестов с MockWebServer
  • ГЛАВА 4. РЕАЛИЗАЦИЯ НОВОГО ПОДХОДА РАБОТЫ С FEATURE TOGGLE
    • 4.1. Реализация способов переопределения значений feature toggle в автотестах
    • 4.2. Чтение значений feature toggle
    • 4.3. Организация процесса аудита используемых в тестах feature toggle
  • ГЛАВА 5. НАСТРОЙКА МОК-СЕРВЕРА
    • 5.1. Конфигурация MockWebServer
    • 5.2. Утилитный код
    • В тестах достаточно в before методе создать заглушки для всех необходимых запросов и вызвать метод mockResponses (см. листинг 15).
  • ГЛАВА 6. РЕЗУЛЬТАТЫ РАБОТЫ
    • 6.1. Переход на новый подход работы с feature toggle
    • 6.2. Оценка эффективности использования мокирования внешнего API в тестах
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Статистика использования

stat Количество обращений: 0
За последние 30 дней: 0
Подробная статистика