Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Testing Express: 0 to 100 in 30 slides
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Tuenti
July 16, 2016
Programming
460
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Testing Express: 0 to 100 in 30 slides
Tuenti
July 16, 2016
More Decks by Tuenti
See All by Tuenti
Creating a culture of learning at Tuenti
tuenti
1
160
Poniendo Kotlin en producción a palos
tuenti
0
140
Culture Matters
tuenti
1
210
Defensive Programming & Resilient systems in Real World (TM)
tuenti
1
1.7k
How .Tuenti develops tech products
tuenti
0
110
Microservices and Testing, talking from the experience
tuenti
2
180
Love your tests
tuenti
0
1.3k
Experiences with Microservices at Tuenti
tuenti
0
310
Tuenti <3 Testing
tuenti
0
1.4k
Other Decks in Programming
See All in Programming
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
240
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
770
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
Are APIs Still Relevant in the AI Era?
soyuka
0
450
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
Java 27新機能 / Java 27 new features
kishida
2
220
プロダクトコードからライブラリの境界を見つける
elmetal
PRO
0
110
AWSに止められる覚悟してますか?
morizo_1984
2
530
iOS 27でニュースアプリはどう変わる!? 〜日経電子版の新機能対応と、開発事例から〜
lynnswap
7
13k
パスワード再設定メールのURLについて知っておこう
uyuki234
0
140
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
4
4.6k
AIに “答え“を書かせるのを やめてみた
___akari11
0
120
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.4k
Become a Pro
speakerdeck
PRO
31
6.3k
The browser strikes back
jonoalderson
0
1.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Deep Space Network (abreviated)
tonyrice
0
360
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Unsuck your backbone
ammeep
672
58k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
490
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
920
Transcript
Testing Express: 0 to 100 in 30 slides
[email protected]
@kinisoftware
Self-promotion Q&A => http:/ /goo.gl/slides/x4c4xw
Why this talk? • We <3 our customers • Confidence
• Safety Net • Refactoring, refactoring, refactoring • It is professional, guys :) Q&A => http:/ /goo.gl/slides/x4c4xw
By Mike Cohn Q&A => http:/ /goo.gl/slides/x4c4xw
Black-box oriented tests End to end Phone/simulator No tests doubles
can be used Needs a full & provisionable server environment Slow tests Page Objects Q&A => http:/ /goo.gl/slides/x4c4xw
JVM No need external env set up Tests run in
build time Use test doubles Slower tests than unit tests Q&A => http:/ /goo.gl/slides/x4c4xw
JVM Application classes in isolation Test doubles Build time Really
fast tests F.I.R.S.T. Q&A => http:/ /goo.gl/slides/x4c4xw
What’s wrong with this?
Testability • Mixing object graph construction with application logic •
Ask for things, don’t look for things • Doing work in constructor • Global State/Singletons • Static methods Q&A => http:/ /goo.gl/slides/x4c4xw
Test Doubles • Stubs => Canned answers • Mocks =>
Stubs + verify • Spies => Record interaction info • Fake => I seem real but not • Dummy => I do nothing at all Q&A => http:/ /goo.gl/slides/x4c4xw
“It’s overwhelmingly easy to write bad unit tests that add
very little value to a project while inflating the cost of code changes astronomically.” • Code coverage != Test quality • Don’t Repeat Yourself (Globally) • Mocks, mocks everywhere • Test smells
Talk is cheap. Show me the code.
Q&A => http:/ /goo.gl/slides/x4c4xw
None
Q&A => http:/ /goo.gl/slides/x4c4xw
None
Code readability + Naming + Code structure + DSL
None
Q&A => http:/ /goo.gl/slides/x4c4xw
None
• Builders
Builders + Mothers
None
None
None
Q&A => http:/ /goo.gl/slides/x4c4xw
Q&A
[email protected]
@kinisoftware http:/ /goo.gl/slides/x4c4xw
Thanks!! We are hiring!
[email protected]
@kinisoftware
Extra Ball • Mix JVM Languages (Groovy, Scala, Kotlin, etc)
• Java 8 fuck yeah! • JUnit 5 • Mutation Testing
Extra Ball • Effective Unit Testing • WEWUT • Pragmatic
Unit Testing with JUnit • GOOS • The Art of Unit Testing • JUnit in Action • xUnit Patterns • Refactoring