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
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
340
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
170
Devoxx BE - Local Development in the AI Era
kdubois
0
130
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
500
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
2
500
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
0
280
CSC509 Lecture 06
javiergs
PRO
0
260
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
540
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
370
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
110
What's new in Spring Modulith?
olivergierke
1
150
Catch Up: Go Style Guide Update
andpad
0
230
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
How to Ace a Technical Interview
jacobian
280
24k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
How GitHub (no longer) Works
holman
315
140k
The Illustrated Children's Guide to Kubernetes
chrisshort
49
51k
BBQ
matthewcrist
89
9.8k
Become a Pro
speakerdeck
PRO
29
5.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
590
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Bash Introduction
62gerente
615
210k
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