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
2022 API World - Testing Pyramid for Event-Driv...
Search
Dan Siwiec
June 21, 2023
Programming
0
35
2022 API World - Testing Pyramid for Event-Driven Systems
Dan Siwiec
June 21, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
180
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.3k
Best-Practices-for-Cortex-Analyst-and-AI-Agent
ryotaroikeda
1
110
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
690
CSC307 Lecture 03
javiergs
PRO
1
490
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
310
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
760
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
270
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
720
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
CSC307 Lecture 10
javiergs
PRO
1
660
CSC307 Lecture 07
javiergs
PRO
1
550
Featured
See All Featured
Test your architecture with Archunit
thirion
1
2.2k
How to Ace a Technical Interview
jacobian
281
24k
AI: The stuff that nobody shows you
jnunemaker
PRO
2
260
YesSQL, Process and Tooling at Scale
rocio
174
15k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Thoughts on Productivity
jonyablonski
74
5k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
100
Testing 201, or: Great Expectations
jmmastey
46
8k
Docker and Python
trallard
47
3.7k
Transcript
Testing Pyramid for Event-Driven Systems Dan Siwiec
Hi. I’m a software architect with 15 years of experience
across multiple domains - health care, telco, travel, banking, retail, recently in love with Kotlin. 🌍 https://danoncoding.com https://github.com/danielsiwiec ✉
[email protected]
What is a TESTING PYRAMID?
Testing Pyramid Demystified End to End Service Unit
Testing Pyramid Demystified End to End Service Unit In-memory tests,
exercising the smallest, testable part of the application. Often a method or a class.
Testing Pyramid Demystified End to End Unit Service In-memory tests,
exercising one component at a time, treating it as a black box. Also called service tests.
Testing Pyramid Demystified End to End Service Unit Browser tests
or cross-service tests on a deployed environment exercising a complete flow
Testing Pyramid Demystified End to End Service Unit Exploratory, ad-hoc
testing or investigation. Focus on learning, rather than validation. Manual
Testing Pyramid Demystified End to End Manual Service Unit
Use Case: ORDER PROCESSING
Happy Order Flow 1. User submits order 2. Is there
inventory? 3. Process payment 4. Send shipment On each step send customer a notification
Point-to-point system
Event-Driven System
Test Pyramid APPLIED
Unit Testing End to End Service Unit
Payment Service
Unit Testing
Unit Testing
None
None
None
None
None
None
Service Testing End to End Unit Service
Service Testing
Service Testing
None
None
None
None
None
None
None
None
None
None
None
None
End-to-End Testing End to End Service Unit
System Under Test: End-to-End Testing
None
None
None
Bonus: Performance Tests
None
None
None
Event-Driven System
Event-Driven System
None
None
None
Final Considerations
Pyramid Revisited Flakiness User Focus Time End to End Service
Unit
Pyramid Revisited Flakiness User Focus Time End to End Service
Unit
Pyramid Revisited Flakiness User Focus Time Resilience to Refactoring End
to End Service Unit
Testing Diamond End to End Service Unit Flakiness User Focus
Time Resilience to Refactoring
https:/ /github.com/danielsiwiec/event-driven-demo
Thank you.
[email protected]
https:/ /danoncoding.com