Автор: Ольга Назина
Тестирование GraphQL API

GraphQL приходит на смену REST API, исправляя его недостатки. Эта технология набирает обороты и уже активно используется в крупных системах, о ней говорят на конференциях, её активно внедряют в свои продукты.

Поэтому тестировщику становится важно понимать, что это такое, как вызывать GraphQL API, и как его тестировать. Именно этому мы и будем учиться на курсе. Я подробно расскажу и покажу на примерах, как писать запросы, как составляется схема, как можно автоматизировать рутину (в Postman-е), а вы закрепите пройденный материал домашними заданиями. Готовьтесь к тому, что практики будет много!

Работать будем с инструментами:

  • Apollo
  • Postman

Входной порог! Я предполагаю, что вы уже умеете тестировать: знаете про классы эквивалентности и граничные значения. То есть базовыми знаниями тестирования владеете. Подробнее см в блоке «Вопросы и ответы»

Темы курса:

1. Введение в GraphQL API

  1. Что такое GraphQL API и как его вызывать (учимся «накликивать» запрос)
  2. Структура запроса в GraphQL
  3. Что такое JSON (формат ответа от сервера)
  4. Чтение данных — запросы с типом query
  5. Изменение данных — запросы с типом mutation
  6. Подписки — запросы с типом subscription
  7. Использование variables (переменных) в запросе

2. Schema и как по ней составлять запрос. Все запросы составляются по схеме, поэтому её нужно уметь читать. Этому и будем учиться:

  1. Схема GraphQL
  2. Какие данные мы можем получить в ответе GraphQL API
  3. Типы данных в схеме:
    1. Scalar
    2. Object
    3. Input
    4. Enum
    5. Union
    6. Interface
  4. Массивы и обязательные поля
  5. Комментарии
  6. Типы запросов:
    1. Query
    2. Mutation
  7. Как написать схему
  8. Изменения, вносимые в схему — на что влияют
  9. Инструменты вызова GraphQL:
    1. Apollo
    2. Postman
    3. GraphQL-playground
    4. Другие инструменты

3. Тестирование GraphQL API

  1. GraphQL API vs REST API — чем отличаются
  2. Тестируем запрос в GrahpQL API
  3. Тестирование ролевой модели и доступов
  4. Тестируем параметры
  5. Тестируем заголовки
  6. Тестируем ответ
  7. Разные виды тестирования — как влияют на тесты

4. Автоматизация на уровне Postman

  1. Выбор инструмента для автоматизации (проблемы Apollo)
  2. Сохранение тестов
  3. Создание и запуск тестовых коллекций
  4. Переменные и окружения — для чего нужны и как используются
  5. Как передать рандомные значения
  6. Как запустить один запрос несколько раз
  7. Как загрузить тестовые данные из файла
  8. Как написать первый автотест в Postman
  9. JSON — как достать данные из:
    1. простого массива
    2. простого объекта
    3. дерева объектов
  10. Переиспользование переменных

Внимание: у нас не курс по программированию, мы не будем писать грамотный и качественный код. Я рассказываю только основы, которые помогают взять пример из Постмана и доработать под свои нужды.

Дата последнего обновления: 16 октября 2024

Темы

Другие курсы

Kotlin Multiplatform шаг за шагом
Kotlin Multiplatform шаг за шагом
Автор: Максим Казанцев
Подробнее
9 500
Charles Proxy как инструмент тестировщика
Charles Proxy как инструмент тестировщика
Автор: Ольга Назина
Подробнее
5 500
Python. Микросервисы. Backend на FastAPI
Python. Микросервисы. Backend на FastAPI
Автор: Саид Магомедов
Подробнее
5 890
1 473
/мес
JavaScript: от теории к практике
JavaScript: от теории к практике
Автор: Мария Ажгихина
Подробнее
3 200
Web-технологии: практический курс CSS
Web-технологии: практический курс CSS
Автор: Мария Ажгихина
Подробнее
1 699
Фронтенд-разработчик
Фронтенд-разработчик
Авторы: Группа авторов
Аналитик 1С. Основные инструменты и ввод в профессию
Аналитик 1С. Основные инструменты и ввод в профессию
Автор: Василий Еремин
Подробнее
1 490
Введение в Rust
Введение в Rust
Автор: Максим Смирнов
Подробнее
2 290
RCodeLab. Большой курс по программированию на Lua в Roblox
RCodeLab. Большой курс по программированию на Lua в Roblox
Автор: Александр Бобуров
Подробнее
3 000
Назад
Смотреть дальше