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.7k
Сергей Макаров — Go, Allure и HTTP, или Как мило тестировать HTTP-сервисы на Go
Ozon Tech
July 18, 2022
Tweet
Share
More Decks by Ozon Tech
See All by Ozon Tech
Анастасия Писнова, «Текст как проект»
ozontech
0
32
Светлана Каюшина, Автоматизируем документирование и внедряем ИИ
ozontech
0
48
Павел Костромитин, «Что случилось у UXW T-Банка в 2024 »
ozontech
0
72
Сергей Горшенин, «Конвертация данных Ozon»
ozontech
0
44
Юрий Гуреев, «Интеграция 1С с внешними системами. Проблемы и их решения»
ozontech
0
79
Артём Нургалиев, «Кэш на кэш: как ускоряли автобиддеры»
ozontech
0
41
Анна Мария Попова (Х5 Tech) – Фантастический техпис: может ли опыт создания художественных книг помочь в написании документации
ozontech
0
220
Александр Мачулин (Gramax) – Справочник фантастических тварей из Docs as Code
ozontech
0
230
Мария Смирнова – Дзен и искусство работы с документацией: как использовать принципы буддизма в работе техписа
ozontech
0
170
Other Decks in Technology
See All in Technology
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
940
CNCFの視点で捉えるPlatform Engineering - 最新動向と展望 / Platform Engineering from the CNCF Perspective
hhiroshell
0
130
アウトプットから始めるOSSコントリビューション 〜eslint-plugin-vueの場合〜 #vuefes
bengo4com
3
400
MCP ✖️ Apps SDKを触ってみた
hisuzuya
0
300
Railsの話をしよう
yahonda
0
170
RDS の負荷が高い場合に AWS で取りうる具体策 N 連発/a-series-of-specific-countermeasures-available-on-aws-when-rds-is-under-high-load
emiki
7
4.5k
Zephyr(RTOS)にEdge AIを組み込んでみた話
iotengineer22
1
280
AIとともに歩んでいくデザイナーの役割の変化
lycorptech_jp
PRO
0
810
クラウドとリアルの融合により、製造業はどう変わるのか?〜クラスメソッドの製造業への取組と共に〜
hamadakoji
0
360
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
43k
もう外には出ない。より快適なフルリモート環境を目指して
mottyzzz
13
9.1k
個人でデジタル庁の デザインシステムをVue.jsで 作っている話
nishiharatsubasa
2
3.8k
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
We Have a Design System, Now What?
morganepeng
53
7.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
630
RailsConf 2023
tenderlove
30
1.3k
Building Applications with DynamoDB
mza
96
6.7k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Side Projects
sachag
455
43k
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 Библиотека: