Тестирование веб-API

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Веб-интерфейсы — лицо приложения, и они должны быть совершенными. Внедрение программы автоматизированного тестирования — лучший способ убедиться, что ваши API готовы к работе. «Тестирование веб-API» — это уникальное практическое руководство, включающее в себя описание всех этапов: от начального проектирования набора тестов до методов документирования, реализации и предоставления высококачественных API. Вы познакомитесь с обширным набором методов тестирования — от исследовательского до тестирования продакшен-кода, а также узнаете, как сэкономить время за счет автоматизации с использованием стандартных инструментов. Книга поможет избежать многих трудностей при тестировании API.

Author(s): Марк Винтерингем
Series: Библиотека программиста
Edition: 1
Publisher: Питер
Year: 2024

Language: Russian
Commentary: Publisher's PDF
Pages: 304
City: СПб.
Tags: API Design; Testing; Test Automation; Performance Testing; Test-Driven Development; Exploratory Testing; Security Testing; Contract Tests; APIs

Вступительное слово
Предисловие
Благодарности
О книге
Для кого эта книга
Новичкам в построении стратегии тестирования API
Улучшение существующей стратегии тестирования API
Реализация определенных методов тестирования
Структура книги
Часть 1. Разработка стратегии тестирования
Часть 2. Введение тестов в нашу стратегию
Часть 3. Расширение стратегии тестирования
Предварительные требования
HTTP
Java
О коде в книге
Restful-booker-platform
Источники, используемые в книге
Форум LiveBook
Об авторе
Иллюстрация на обложке
От издательства
Часть 1. Значение тестирования веб-API
Глава 1. Для чего и как мы тестируем веб-API
1.1. Что происходит в ваших веб-API
1.1.1. Собственная сложность веб-API
1.1.2. Сложность взаимодействия многих веб-API
1.2. Как тестирование помогает нам
1.2.1. Представление
1.2.2. Реализация
1.2.3. Значение тестирования
1.2.4. Стратегический подход к тестированию API
Итоги
Глава 2. Начинаем наш путь тестирования
2.1. Знакомство с продуктом
2.1.1. Знакомство с нашей API-песочницей
2.2. Знакомство с платформой restful-booker
2.2.1. Изучение продукта
2.2.2. Исследования за пределами продукта
2.3. Фиксация нашего понимания
2.3.1. Сила моделей
2.3.2. Построение собственных моделей
2.4. Поздравляю, вы уже тестируете!
Итоги
Глава 3. Качество и риски
3.1. Что такое качество
3.1.1. Характеристики качества
3.1.2. Знакомство с пользователями
3.1.3. Качество и определение целей для нашей стратегии
3.2. Выявление рисков для качества
3.2.1. Обучение выявлению рисков
3.2.2. Игра «Газетный заголовок»
3.2.3. Обходное тестирование
3.2.4. Техника RiskStorming
3.3. Первые шаги в реализации стратегии
3.3.1. Выбор правильного подхода к тестированию риска
Итоги
Часть 2. Разработка стратегии тестирования
Глава 4. Тестирование дизайна API
4.1. Как мы тестируем дизайн API
4.1.1. Инструменты для опроса
4.1.2. Расширение методов и инструментов тестирования дизайна API
4.2. Использование инструментов документирования API для тестирования дизайна
4.2.1. Документирование API с помощью Swagger / OpenAPI 3
4.2.2. Помимо документации
4.3. Стимулирование команды к тестированию дизайна API
4.3.1. Как получить возможность тестирования дизайна API
4.3.2. Использование регулярных встреч
4.3.3. Организация специальных встреч
4.4. Тестирование дизайна API как элемент стратегии
Итоги
Глава 5. Исследовательское тестирование API
5.1. Значение исследовательского тестирования
5.1.1. Цикл тестирования в исследовательском тестировании
5.2. Планирование исследования
5.2.1. Создание уставов
5.2.2. Уставы и сеансы исследовательского тестирования
5.2.3. Проведение исследовательского тестирования
5.3. Исследовательское тестирование: пример
5.3.1. Начало сеанса
5.3.2. Как понять, когда что-то не так
5.3.3. Придумывание идей для тестирования
5.3.4. Использование инструментов
5.3.5. Ведение записей
5.3.6. Уметь остановиться
5.3.7. Проведение собственного сеанса исследовательского тестирования
5.4. Делитесь своими находками
5.5. Исследовательское тестирование как часть стратегии
Итоги
Глава 6. Автоматизация тестирования веб-интерфейса API
6.1. Получение пользы от автоматизации
6.1.1. Иллюзии автоматизации
6.1.2. Автоматизация для выявления изменений
6.1.3. Пусть риск будет нашим проводником
6.2. Настройка инструмента автоматизации Web API
6.2.1. Зависимости
6.2.2. Структурирование фреймворка
6.3. Создание автоматизированных проверок API
6.3.1. Автоматическая проверка 1: GET-запрос
6.3.2. Автоматическая проверка 2: POST-запрос
6.3.3. Автоматизированная проверка 3: объединение запросов
6.3.4. Запуск автоматизированных тестов в качестве интеграционных
6.4. Использование автоматизации в стратегии тестирования
Итоги
Глава 7. Разработка и внедрение стратегии тестирования
7.1. Определение стратегии для конкретного контекста
7.1.1. Определение приоритетных задач
7.1.2. Разные стратегии для различных контекстов
7.2. Превращение стратегии тестирования в план тестирования
7.2.1. Понимание тестируемости контекста
7.2.2. Организация и документирование плана
7.2.3. Выполнение плана и его осмысление
7.2.4. Развитие стратегии
Итоги
Часть 3. Расширяем нашу стратегию тестирования
Глава 8. Продвинутая автоматизация веб-API
8.1. Разработка через приемочное тестирование
8.1.1. Настройка автоматизированного фреймворка для приемочного тестирования
8.1.2. Создание заведомо провальной автоматической проверки
8.1.3. Добиваемся прохождения автоматической проверки
8.1.4. Остерегайтесь ловушек
8.2. Моделирование (mocking) веб-API
8.2.1. Подготовка к работе
8.2.2. Построение смоделированной проверки
8.3. Выполнение в составе пайплайна
8.3.1. Автоматизация интегрирована с кодовой базой
8.3.2. Автоматизация в отдельном проекте
Итоги
Глава 9. Тестирование контрактов
9.1. Что такое тестирование контрактов и как оно помогает в работе
9.2. Настройка системы тестирования контрактов
9.2.1. Введение в Pact
9.3. Создание теста контракта потребителя
9.3.1. Добавление Pact к нашему классу
9.3.2. Создание проверки потребителя
9.3.3. Настройка и размещение информации в Pact Broker
9.4. Создание теста контракта поставщика
9.4.1. Реализация теста контракта поставщика
9.4.2. Тестирование изменений
9.5. Тестирование контрактов как часть стратегии тестирования
Итоги
Глава 10. Тестирование производительности
10.1. Планирование теста производительности
10.1.1. Типы тестов производительности
10.1.2. Виды показателей при проведении тестов производительности
10.1.3. Определение целей тестирования производительности и ключевых показателей эффективности (KPI)
10.1.4. Создание пользовательского потока (user flow)
10.2. Выполнение теста производительности
10.2.1. Настройка инструментов для тестирования производительности
10.2.2. Создание сценария тестирования производительности
10.3. Выполнение и оценка теста производительности
10.3.1. Подготовка и проведение теста производительности
10.3.2. Анализ результатов
10.4. Ожидания от тестирования производительности
Итоги
Глава 11. Тестирование безопасности
11.1. Работа с моделями угроз
11.1.1. Создание модели
11.1.2. Обнаружение угроз с помощью STRIDE
11.1.3. Создание деревьев угроз
11.1.4. Минимизация угроз
11.2. Использование философии безопасности при тестировании
11.2.1. Тестирование безопасности на этапе проектирования API
11.2.2. Исследовательское тестирование безопасности
11.2.3. Автоматизация и тестирование безопасности
11.3. Тестирование безопасности как часть стратегии
Итоги
Глава 12. Тестирование в продакшене
12.1. Планирование тестирования в продакшене
12.1.1. Что отслеживать
12.1.2. Цели уровня обслуживания
12.1.3. Соглашения об уровне обслуживания
12.1.4. Показатели уровня обслуживания
12.1.5. Что сохранять
12.2. Настройка инструментов для проведения тестирования в продакшене
12.2.1. Настройка учетной записи Honeycomb
12.2.2. Добавление Honeycomb в API
12.2.3. Расширенные запросы
12.2.4. Создание триггеров SLO
12.3. Дальнейшее тестирование в продакшене
12.3.1. Тестирование с применением синтетических пользователей
12.3.2. Тестирование гипотез
12.4. Расширение стратегии за счет тестирования в продакшене
Итоги
Приложение. Установка платформы API-песочницы
Настройка платформы restful-booker