Автоматизация тестов для REST API при помощи Postman
Автор курса: Ольга Назина
Сайт автора: software-testing_ru/edu/3-online/315-rest-api-postman
Цена автора: 13000 руб.
На курсе мы будем писать автотесты для API-методов в программе Postman. Мы пройдем полный цикл — от первого автотеста до настройки CI (Continuous Integration). От Math.random до циклов и условий. От простого include до регулярных выражений. Это курс вам подойдет, если:
- Вы не умеете автоматизировать — Postman дает отличный и простой старт.
- Вы тестируете API черным ящиком — например, это «чужое» API, а вы работаете в интеграторе
После прохождения курса вы сможете настроить систему автотестов для ваших API-методов, даже если ранее на проекте никакой автоматизации не было вообще!
Главная фишка курса — МНОГО практики! На курсе 57 (!) обязательных домашних заданий. Обучение идет 14 недель (3,5 месяца) — 13 занятий и неделя в конце на «хвосты».
Входной порог! Я предполагаю, что вы:
- Знаете английский на уровне «чтение со словарем / гуглтранслейтом». Мы будем тестировать в том числе JIRA API по стандартной документации, которая на английском. Вы должны прочитать описание метода и понять его.
- Знаете любой язык программирования на уровне школьной программы или «читал книгу о нем 3 года назад» — не падаете в обморок от слов «переменные», «массивы», знаете какие бывают типы данных и операторы сравнения. Тренер расскажет про эти понятия в привязке к примерам, но вам будет проще, если что-то почитаете заранее. Посмотрите этот кусок лекции, если он непонятный, то на курс рановато.
- Умеете тестировать: знаете про классы эквивалентности и граничные значения. Подробнее см в блоке «Вопросы и ответы»
Программа курса:
Спойлер
1. Первый тест
- Пишем первый автотест — на status code. Разбор автотеста, что есть что.
- Экскурс в JS:
- Синтаксис функций
- Анонимные функции
- Как вызывать функцию и функцию объекта
- Объект pm
- Название автотеста
- Консоль постмана
- Старый VS новый постман
2. Библиотеки Chai.js и Node.js
- Chai.js
- Как писать “я ожидаю” в тесте?
- Какие возможности открывает pm.expect
- 37 способов написать тесты на status code
- Node.js
- Assert в автотестах
- Еще 11 способов написать тесты на status code
3. Объекты и массивы: достаем данные
Разбираем тест на JSON из snippet
- Переменные var, let, const
- Как обратиться к массиву
- Как обратиться к объекту
- Как достать значение из простого JSON
- Как достать значение из дерева JSON
- Как достать значение из XML
- Object.keys
- Почему консоль не помогает достать заголовки из pm.response
4. Базовые тесты на ответ сервера
- Тесты на text
- Тесты на JSON из документации Postman
- Разница между equal, eql и deep.equal
- Тесты на include — include, deep.include, nested.include
- Тесты на свойства объекта — property, keys
5. Базовые тесты на ответ сервера (продолжение)
- Изучаем типы элементов — .a, .instanceof
- Прототипы и наследование в JS
- Тесты на массивы в Postman-е (Chai.js)
- Тесты на строку
- Тесты на число
- Тесты на JSON через Node.js
- Тесты на XML в ответе
- Тесты на заголовки
- Тесты на Cookie
6. Переменные и окружения
- Как запустить несколько запросов подряд
- Как запустить один запрос несколько раз
- Как передать рандомные значения в Postman
- Как считать данные из файла
- Как написать тест на данные из файла
- Переменные в Postman
- Локальные переменные, local
- Переменные из файла, data
- Переменные окружения, environment
- Переменные коллекции, collection
- Глобальные переменные, global
- Переменная или строка? Учимся различать
- Переиспользование переменных
7. Условия и циклы
- Условие if else
- Цикл while
- Цикл for
- Цикл forEach
- SendRequest в тестах
- Логические операторы &&, ||
8. Math.floor и другие полезные функции JS для тестов
- Правила описания команд
- Объявление переменной в JS
- Методы и свойства примитивных типов:
- Строки
- Числа
- Массивы
- Даты
- Математические функции
- Пример «сложного» теста
9. CI: Newman + Jenkins
- Что такое CI
- Устанавливаем Newman
- Newman — запуск тестов
- Отчеты в Newman
- Jenkins + Newman, настраиваем связь
- Триггеры в jenkins — запуск задачи по расписанию
- Запуск задачи в jenkins через curl
- Pipeline, что это такое? Пишем первый скрипт
- Jenkins + Git
- Разделение ролей в Jenkins
10. Регулярные выражения (regexp)
- Что такое регулярные выражения
- Как и где они применяются
- Где можно их пощупать
- Поиск в регулярных выражениях
- Поиск текста
- Поиск любого символа
- Поиск по набору символов
- Перечисление вариантов
- Метасимволы
- Квантификаторы
- Позиция внутри строки
- Замена с помощью регулярных выражениях
- Regexp в автотестах Postman-а
11. Валидация ответа по JSON Schema
- Что такое JSON Schema
- Типы данных в JSON Schema
- Строка
- Число
- Объект
- Массив
- Boolean
- Null
- Not
- Аннотации в JSON Schema
- if else в JSON Schema
- Валидация JSON Schema в Postman-e
12. Тесты на HTML
- Что такое HTML
- Как написать автотест на HTML
- Basic jQuery Selectors
- jQuery: get Content and Attributes
- Attribute selectors в jQuery
- Документация Cheerio
13. Организация тестов. SQL через Postman
- Организация и рефакторинг тестов в Postman
- Postman VS REST-assured
- Postman vs Framework в коде — когда что использовать
- SQL-запросы через Postman — зачем и как?
- Подводим итоги курса.
Отзывы
Отзывов пока нет.