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
QA - Изоляция компонентов
Search
Ozon Tech
January 20, 2022
Technology
0
4.3k
QA - Изоляция компонентов
Ozon Tech
January 20, 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
映像エッジAIにおけるNode-RED活用事例
emirmatsui
0
140
事業開発におけるDify活用事例
kentarofujii
5
1.3k
初めてのDatabricks Apps開発
taka_aki
1
240
「魔法少女まどか☆マギカ Magia Exedra」の多様なバトルの開発を柔軟かつ効率的に実現するためのPure C#とUnityの分離について
gree_tech
PRO
0
250
もう外には出ない。より快適なフルリモート環境を目指して
mottyzzz
13
9.1k
「REALITY」3Dアバターシステムの7年分の拡張の歴史について
gree_tech
PRO
0
130
[2025年10月版] Databricks Data + AI Boot Camp
databricksjapan
1
240
生成AIを安心して活用するために──「情報セキュリティガイドライン」策定とポイント
gree_tech
PRO
1
260
今この時代に技術とどう向き合うべきか
gree_tech
PRO
2
2.1k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
9k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3k
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
710
Featured
See All Featured
KATA
mclloyd
PRO
32
15k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Product Roadmaps are Hard
iamctodd
PRO
55
11k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
115
20k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Designing Experiences People Love
moore
142
24k
Reflections from 52 weeks, 52 projects
jeffersonlam
353
21k
4 Signs Your Business is Dying
shpigford
185
22k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Transcript
Изоляция компонентов Дмитрий Колесник Специалист по тестированию
2
План • Как можно изолировать компоненты приложения? • Тестовые дублеры
• Какие бывают формы? 3
Путаница в терминологии тестирования 4
5
6
7
8
9
10
11
12
13
Лишние действия Оплата Сбор заказа Резерв стоков 14
Долгая обратная связь 15
Можно тестировать приложение по частям 16
Модульное (unit) тестирование 17
Тесты на функции или методы класса 18
Тесты на front или back? 19
Сборка приложения 20
Скорость исполнения тестов 21
Sociable and Solitary 22 https://martinfowler.com/articles/2021-test-shapes.html
Тестовые дублеры 23
Dummy 24
Fake 25 Service ORM Database In memory database
Stub 26
Spy 27 Вызов функции Почтовый сервер Отправка письма Вызов функции
Spy dev/null
Mock 28
Кто пишет unit тесты? Разработчик или Тестировщик? Test Driven Development
Dependency injection 29
Клиент серверное приложение 30 Клиент • Web приложение • Mobile
app • etc… Сервер • Приложение • База данных • Внешние API • etc…
Микросервисная архитектура 31 Entrypoint Item facade Item service Item DB
Marketing API User API User DB
Как выглядит микросервис https://martinfowler.com/articles/microservice-testing/#anatomy-modules 32
Компонентное тестирование 33
Что такое компонент? https://martinfowler.com/articles/microservice-testing/#testing-component-in-process-diagram 34
Интеграционное тестирование 35
Схема интеграционного теста 36 Сервис Входящий запрос Database External API
Интеграционный тест с базой данных 37
Тестирование через API 38
Service discovery 39
Контрактное тестирование 40
Provider test / Consumer test 41 Executable test Consumer Provider
Interface
Contract first 42
UI тестирование 43
Record and playback testing 44
Скриншот тесты 45
Show rooms 46
Системное тестирование (e2e) 47
48
UI e2e и API e2e 49
Исследовательское тестирование 50
51 Уровни изоляции компонентов приложения при тестировании Исследовательское тестирование Системное
тестирование (end to end / e2e) Тестирование пользовательского интерфейса Контрактное тестирование Интеграционное тестирование Компонентное тестирование Модульное тестирование (unit)
Как об этом пишут другие? 52
istqb.org 53 Certified tester Automotive software tester Component testing Component
test Integration testing Component integration test System testing System test Acceptance testing System integration test System of systems test Acceptance test
martinfowler.com https://martinfowler.com/articles/microservice-testing/ 54
Как тестируют в Google 55 Виды тестов Большие Средние Маленькие
Паттерны и антипаттерны Формы тестов 56
Рожок мороженого https://khushiy.com/2019/02/07/test-pyramid-antipatterns/ 57
Песочные часы https://testing.googleblog.com/2020/11/fixing-test-hourglass.html 58
Пирамида https://martinfowler.com/articles/practical-test-pyramid.html#TheTestPyramid 59
Гексагон или соты https://engineering.atspotify.com/2018/01/11/testing-of-microservices/ 60
Как правильно делать? 61
Дмитрий Колесник Спасибо за внимание!
[email protected]