Download - To test or not to test? this is the prblem
![Page 1: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/1.jpg)
to test, or not to test?
![Page 2: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/2.jpg)
to test, or not to test?this is the problem
![Page 3: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/3.jpg)
Matteo Papadopoulos @spleenteo || @teamcantiere
![Page 4: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/4.jpg)
SMALL STARTUPS !
BIG STRATUPS !
ENTERPRISE}
![Page 5: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/5.jpg)
SMALL STARTUPS !
BIG STRATUPS !
ENTERPRISE} QUALITY
![Page 6: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/6.jpg)
} QUALITY = TEST
![Page 7: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/7.jpg)
} QUALITY = TEST {UNIT !
INTEGRATION !
TDD !
BDD
![Page 8: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/8.jpg)
{ UNIT TESTthe smallest testable part of an application
TEST
![Page 9: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/9.jpg)
INTEGRATION TESTsoftware modules are combined
and tested as a group
TEST
![Page 10: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/10.jpg)
TEST DRIVEN DEVELOPMENTRED » GREEN » REFACTOR
TEST
![Page 11: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/11.jpg)
BEHAVIOUR DRIVEN DEVELOPMENT
What and how should I test?
TEST
![Page 12: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/12.jpg)
SALES APPROACHa customer should know about testing?
![Page 13: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/13.jpg)
NO?NO DISCUSSION
= NO PROBLEM
= NO TIME/BUDGET
= NO TESTS
! !
YO!
a customer should know about testing?
![Page 14: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/14.jpg)
NO DISCUSSION =
NO PROBLEM =
NO TIME/BUDGET =
NO TESTS ! !
YO!
NO?
![Page 15: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/15.jpg)
YES?NO DISCUSSION
= NO PROBLEM
= NO TIME/BUDGET
= NO TESTS
! !
YO!
a customer should know about testing?
![Page 16: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/16.jpg)
TDDBDD?
![Page 17: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/17.jpg)
TEST SUITE
![Page 18: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/18.jpg)
YES?skepticism, fear, disgust
![Page 19: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/19.jpg)
YES?TESTS BRING VALUE
!
TO THE CLIENT !
TO THE DEVS !
TO THE PROJECT
![Page 20: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/20.jpg)
YES!TESTS BRING VALUE
!
TO THE CLIENT !
TO THE DEVS !
TO THE PROJECT
a customer should know about testing?
![Page 21: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/21.jpg)
HOW WE SOLD TESTSand we did it several times!
![Page 22: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/22.jpg)
TRAINING! TRAINING! TRAINING!
HOW WE SOLD TESTS
![Page 23: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/23.jpg)
QUALITY! QUALITY! QUALITY!
HOW WE SOLD TESTS
inner quality and external quality
![Page 24: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/24.jpg)
![Page 25: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/25.jpg)
FULLY TESTED 95%
HOW WE SOLD TESTS
![Page 26: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/26.jpg)
FULLY TESTED CODE
HOW WE SOLD TESTS
bugs reduced by an order of magnitude :)
![Page 27: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/27.jpg)
FULLY TESTED CODE
HOW WE SOLD TESTS
no more regressions!
![Page 28: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/28.jpg)
FULLY TESTED CODE
HOW WE SOLD TESTS
maintainable code
![Page 29: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/29.jpg)
time
cost per change
without test
with test
FULLY TESTED CODE
![Page 30: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/30.jpg)
FULLY TESTED CODE
HOW WE SOLD TESTS
live documentation
• Team growth • Replacing us • Building your own team
essential in many scenarios
![Page 31: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/31.jpg)
to test, or not to test?is the problemthiswhere
?
![Page 32: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/32.jpg)
PROBLEMS?behind the scenes of testing
![Page 33: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/33.jpg)
TESTS ARE SPECS
PROBLEMS ABOUT TESTING
(and clients never know what they want!)
![Page 34: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/34.jpg)
DEVS NEED TIME TO GET USED TO TDD
PROBLEMS ABOUT TESTING
![Page 35: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/35.jpg)
WRITING GOOD TESTS AIN'T SO TRIVIAL
PROBLEMS ABOUT TESTING
![Page 36: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/36.jpg)
CRIMINALOVER-ENGINEERING
PROBLEMS ABOUT TESTING
too much generalization
![Page 37: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/37.jpg)
DOUBLE MANTAINANCE
PROBLEMS ABOUT TESTING
the app & the test suite
![Page 38: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/38.jpg)
DOUBLE SIZE
PROBLEMS ABOUT TESTING
2:1 test to code ratio
![Page 39: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/39.jpg)
DOUBLE STARTUP BUDGET
PROBLEMS ABOUT TESTING
![Page 40: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/40.jpg)
WHAT HAVE WE LEARNED?and keep trying!
![Page 41: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/41.jpg)
ASK 2 BASIC QUESTIONS
WHAT WE LEARNED
![Page 42: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/42.jpg)
COULD THE APP BE CHANGED WITHIN
FEW MONTHS?
WHAT WE LEARNED
code with no test is legacy code
![Page 43: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/43.jpg)
DO YOU REALLY WANT A FULL
BUG FREE APP?
WHAT WE LEARNED
![Page 44: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/44.jpg)
HIRE EXPERTS
WHAT WE LEARNED
or learn with small projects
![Page 45: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/45.jpg)
SEND REPORTS
WHAT WE LEARNED
customers need to know
![Page 46: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/46.jpg)
BE RESOLUTE
WHAT WE LEARNED
you know the values, they don't
![Page 47: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/47.jpg)
"...Whether ’tis nobler in the mind to suffer, The slings and arrows of outrageous fortune [code], Or to take arms against a sea of troubles [bugs], And by opposing [testing] end them?
For who would bear the whips and scorns of time"
Please forgive me, William (and all of you!)
![Page 48: To test or not to test? this is the prblem](https://reader033.vdocuments.mx/reader033/viewer/2022052522/547e7edbb47959c0508b4b81/html5/thumbnails/48.jpg)
Matteo Papadopoulos @spleenteo || @teamcantiere
let's talk about it!