Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Сергей Макаров — Go, Allure и HTTP, или Как мил...
Search
Ozon Tech
July 18, 2022
Technology
0
4.4k
Сергей Макаров — Go, Allure и HTTP, или Как мило тестировать HTTP-сервисы на Go
Ozon Tech
July 18, 2022
Tweet
Share
More Decks by Ozon Tech
See All by Ozon Tech
Сергей Горшенин, «Конвертация данных Ozon»
ozontech
0
9
Юрий Гуреев, «Интеграция 1С с внешними системами. Проблемы и их решения»
ozontech
0
31
Артём Нургалиев, «Кэш на кэш: как ускоряли автобиддеры»
ozontech
0
10
Анна Мария Попова (Х5 Tech) – Фантастический техпис: может ли опыт создания художественных книг помочь в написании документации
ozontech
0
170
Александр Мачулин (Gramax) – Справочник фантастических тварей из Docs as Code
ozontech
0
100
Мария Смирнова – Дзен и искусство работы с документацией: как использовать принципы буддизма в работе техписа
ozontech
0
94
Сергей Кузнецов – «Эксперименты с нейросетями в рекомендациях»
ozontech
0
100
Артём Нургалиев – «MLOps, автоматизированное обучение и доставка моделей»
ozontech
0
90
Артём Панин – «Автоматическое управление рекламой в Ozon»
ozontech
0
110
Other Decks in Technology
See All in Technology
Databricksで構築する初めての複合AIシステム - ML15min
taka_aki
2
1.4k
Mobbing Practices
kawaguti
PRO
3
360
AIを駆使したゲーム開発戦略: 新設AI組織の取り組み / sge-ai-strategy
cyberagentdevelopers
PRO
0
120
オニオンアーキテクチャで実現した 本質課題を解決する インフラ移行の実例
hryushm
13
2.9k
生成AIの強みと弱みを理解して、生成AIがもたらすパワーをプロダクトの価値へ繋げるために実践したこと / advance-ai-generating
cyberagentdevelopers
PRO
0
160
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
2
300
LLMアプリをRagasで評価して、Langfuseで可視化しよう!
minorun365
PRO
2
280
Figma Dev Modeで進化するデザインとエンジニアリングの協働 / figma-with-engineering
cyberagentdevelopers
PRO
1
400
Autify Company Deck
autifyhq
1
39k
WHOLENESS, REPAIRING, AND TO HAVE FUN: 全体性、修復、そして楽しむこと
snoozer05
PRO
3
6.3k
CI/CDやテスト自動化の開発プロジェクトへの適用
megascus
3
700
GitHub Universe: Evaluating RAG apps in GitHub Actions
pamelafox
0
150
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
88
5.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
13
1.9k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
664
120k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
32
1.8k
GraphQLの誤解/rethinking-graphql
sonatard
66
9.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Optimizing for Happiness
mojombo
376
69k
RailsConf 2023
tenderlove
29
870
The Invisible Side of Design
smashingmag
297
50k
Docker and Python
trallard
40
3.1k
Thoughts on Productivity
jonyablonski
67
4.3k
Transcript
GO, Allure, HTTP, или Как мило тестировать HTTP сервисы на
GO
It’s me! Макаров Сергей Старший разработчик Пишу на Go Автор
библиотеки cute Контрибьютор allure-go
Тесты! Тесты! Тесты в Ozon! Тут отчёты На этом тесты
allure-go Автор: Антон Синяев Github: Статья:
Своя библиотека? Зачем? Там же уже есть решения! Хочу отчеты
в Allure Хочу HTTP тесты Хочу коробочное решение Хочу на GO Вася, 26 лет Тестировщик на Java Работает в Ozon Tech
1) Подготовить HTTP-клиент. 2) Создать данные для теста. 3) Выполнить
HTTP-запрос. 4) Убедиться, что запрос выполнился. 5) Считать ответ в структуру. 6) Начать проверять структуру. Тест
Как будет?
Как будет? Labels Отчёт в Allure
Как будет? Request
Как будет? Asserts Красота
None
Дисклеймер Много про allure, но можно и без него!
Конструктор D’oh!
Suite. Набор тестов. Создание Suite
Suite. Набор тестов.
Милый, нам нужна информация! Информация! Создание Allure лейблов
Милый, нам нужна информация! Информация! Отчёт в Allure
Создаем запрос
Создаем запрос
Доверяй, но проверяй!
Доверяй, но проверяй! Assert Body Assert Headers Assert Response JSON
schema Execute time
Response code Проверка response code Отчёт в Allure
JSON-схема
JSON-схема
Настоящие проверки!
JSON asserts Contains Equal Length GreaterThan Present
Response body Проверка «email» JSON asserts JSON path
Assert body Отчет в Allure при ошибке
Contains Present Coming soon Coming soon Headers asserts
Хочу быть самостоятельным! Варианты Asserts
Хочу быть самостоятельным! Варианты Asserts Создание шага Логирование
Хочу быть самостоятельным! Хочу свои ошибки! Красивая ошибка Отчёт в
Allure
Доверяй, но проверяй! Assert Body Assert Headers Assert Response JSON
schema Execute time + OPTIONAL ASSERTS
Шагай! Создавай дополнительные шаги! Шаг 1 Шаг 1 POST request
Delete request
Шагай! Создавай дополнительные шаги! Шаг 1 Шаг 1 POST request
Delete request
Парень, давай уже заканчивай! Information Request Asserts RUN!!!!!!!!!
Давай посмотрим живьём!
Милый, давай итоги! 79 Тестов: Тестировщиков на cute: 2
Финал Макаров Сергей Tg: SergeyMakar0v Обычно ищу носки или сплю…
Статья про cute github.com/ozontech/cute Библиотека: