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
Fast, Robust, Accurate Or how to love your tests again
Search
David
November 18, 2022
Technology
0
21
Fast, Robust, Accurate Or how to love your tests again
An empiric take to testing.
David
November 18, 2022
Tweet
Share
More Decks by David
See All by David
Testing beyond QualityAssurance
xuaps
0
65
WebRTC
xuaps
0
83
Why Django sucks?
xuaps
0
51
Other Decks in Technology
See All in Technology
サービス開発を前に進めるために 新米リードエンジニアが 取り組んだこと / Steps Taken by a Novice Lead Engineer to Advance Service Development
nologyance
0
180
GoとアクターモデルでES+CQRSを実践! / proto_actor_es_cqrs
ytake
1
160
Git 研修 Basic【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
310
CTOから見た事業開発とプロダクト開発 / My Perspective on Business and Product Development as CTO
keisuke69
4
960
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
17
8.4k
ギークの理想が7つ集まるエムスリーで夢を叶えよう - エムスリー株式会社
m3_engineering
1
260
サービスの持続的な成長と技術負債について
siva_official
PRO
10
4.4k
簡単に始めるSnowflakeの機械学習
nayuts
1
190
ACRiルーム最新情報とAMD GPUサーバーのご紹介
anjn
0
160
JBUG岡山 #6 WordCamp男木島の チームビルディング
takeshifurusato
0
150
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
OSSコミットしてZennの課題を解決した話
dyoshikawa1993
0
150
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
323
37k
Large-scale JavaScript Application Architecture
addyosmani
506
110k
How GitHub Uses GitHub to Build GitHub
holman
471
290k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
The Pragmatic Product Professional
lauravandoore
29
6.1k
Building Adaptive Systems
keathley
34
2k
No one is an island. Learnings from fostering a developers community.
thoeni
17
2.8k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
90
47k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
What the flash - Photography Introduction
edds
65
11k
Side Projects
sachag
451
42k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
20
7.2k
Transcript
@xuapsdev Fast, Robust, Accurate (WIP) Or how to love your
tests again
This is not a talk about opinions
1 - We progress faster with test
2 - Bad tests could be worst than no tests
None
So, what is a bad test from an empirical point
of view?
None
Slow tests
Slow tests False alarms
Slow tests False alarms Di ffi cult to read tests
Brittle tests Slow tests False alarms Di ffi cult to
read tests
Brittle tests Slow tests False alarms Di ffi cult to
read tests What else?
3 properties Speed Detection of regressions Resistance to refactor
Speed
Resistance to refactor
Detection of regression
Resistance to refactor Detection of regressions Speed End to end
test Trivial tests Brittle tests
Oh boy my tests are really bad…
I am so happy that my tests are so good…
None
Lets get some data
Speed
DEMO
Resistance to refactor
Resistance to refactor
DEMO
Detection of regression
Detection of regression
DEMO
I need to start using this right now
How am I using this data?
To decide how to test something
Tune it!
Tune it! Resistance to refactor Speed Detection of regressions
Tune it! Resistance to refactor Speed Detection of regressions Resistance
to refactor Detection of regressions Speed End to end test Trivial tests Brittle tests
To decide if write a test is worthy or not
No test is better than a bad test but, then
we need something else
O b s e r v a b i l
i t y
@xuapsdev @
[email protected]
Do you want an extra ball?
Maintainability Extra ball
None
@xuapsdev @
[email protected]