SlideShare uma empresa Scribd logo
1 de 65
Baixar para ler offline
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
สมเกียรติ ปุ๋ยสูงเนิน
SPRINT3R โดย บริษัท สยาม๡ํานาญกิจ จํากัด บริษัท ออด-อี (ประเทศไทย) จํากัด และพันธมิตร
Thailand
Practical
Software
Engineering
2014
C U R R E N T O F T D D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
T E S T D R I V E N D E V E L O P M E N T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
A C C E P TA N C E T E S T D R I V E N D E V E L O P M E N T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
L A R G E R F E E D B A C K L O O P
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
H I S T O R Y O F T D D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
http://c2.com/cgi/wiki?TenYearsOfTestDrivenDevelopment
1 9 6 0 ’ S
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
T H E S E C R E T O F A N C I E N T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
www.l3ak.com
Professionals
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Test their code
1 9 7 0 ’ S
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
K E N T B E C K
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
http://www.flickr.com/photos/mwichary/2376639066/
Separate what from how
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
1 9 8 9
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
S H O R T - C I R C U I T T H E P R O C E S S
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Automated tests
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Confirm features
1 9 9 6
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
T E S T F I R S T I N C 3 P R O J E C T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
http://www.martinfowler.com/bliki/C3.html
It’s a change in culture
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
X U N I T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
E X P A N D T H E W O R L D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
C 2 W I K I
“Working”
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
is not good enough
1 9 9 9
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
T H E O R I G I N O F M O C K O B J E C T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Listen to the tests
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
2 0 0 1
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
C O N T I N U O U S B U I L D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
W O R K O N M Y M A C H I N E !
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Working system
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
provides feedback
Safety culture
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
T E S T D OX S T Y L E
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
A Sheep eats grass
A Sheep produces good milk
A Sheep moves away from dogs
Focus on intent
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
2 0 0 2
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
F I R S T T D D B O O K
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Remove duplication
Write a fail test before
write any code
When you are lost,
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
slow down
2 0 0 3
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
A L O T O F B O O K
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
2 0 0 4
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
T D D F O R C U S T O M E R
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Confirm understanding
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
with examples
L I V I N G I N R E A L W O R L D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Legacy code
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
code without tests
is
N E X T G E N E R AT I O N
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
2 0 0 7
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
T H E R E S E A R C H S U G G E S T S
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
More effort, better quality
More visible on project
Very hard to get
meaningful results
U N D E R S TA N D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
U N D E R S TA N D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Professionals test their code
Separate what from how
Automatic tests confirm features
It’s change in culture
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Working is not good enough
Listen to the tests
Working system provide feedback
Focus on intent
U N D E R S TA N D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
When you are lost, slow down
It’s not only about testing
Legacy code is code without tests
Understand the principles behind the practice
U N D E R S TA N D
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Focus
Feedback
Professionalism
T D D E R
T E S T S T R U C T U R E
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
B A S I C
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Setup
Execute
Verify
Clean-up
S E V T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Setup
Exercise
Verify
Teardown
A A A
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
E X A M P L E
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
E X A M P L E
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
G O O D T E S T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
P R O P E R T I E S
O F
A - T R I P
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Automated
Thorough
Repeatable
Independent
Professional
T E S T T O O L S
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
X U N I T
http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks
C O D I N G D O J O
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
http://www.aikido-yamada.eu/
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
1 อ่านว่า 1
2 อ่านว่า 2
3 อ่านว่า Fizz
4 อ่านว่า 4
F I Z Z B U Z Z
5 อ่านว่า Buzz
6 อ่านว่า Fizz
7 อ่านว่า 7
8 อ่านว่า 8
9 อ่านว่า Fizz
10 อ่านว่า Buzz
http://en.wikipedia.org/wiki/Fizz_buzz
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
15 อ่านว่า FizzBuzz
F I Z Z B U Z Z
T E S T D R I V E N D E V E L O P M E N T
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
All the tests pass
There is no duplication
Focus your intent
S I M P L E D E S I G N R U L E S
Classes and methods are minimized
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance

Mais conteúdo relacionado

Destaque

Special Hot Air Balloons2
Special Hot Air Balloons2Special Hot Air Balloons2
Special Hot Air Balloons2Sojourner1
 
Module3 Review Fall09
Module3 Review Fall09Module3 Review Fall09
Module3 Review Fall09mrounds5
 
Zoomable Menu Mockup
Zoomable Menu MockupZoomable Menu Mockup
Zoomable Menu MockupNone None
 
Предложения Североамериканской группы проекта InterPARES Trust, ноябрь 2013 года
Предложения Североамериканской группы проекта InterPARES Trust, ноябрь 2013 годаПредложения Североамериканской группы проекта InterPARES Trust, ноябрь 2013 года
Предложения Североамериканской группы проекта InterPARES Trust, ноябрь 2013 годаNatasha Khramtsovsky
 
Flipbook Steve Jasa Dd07081
Flipbook Steve Jasa Dd07081Flipbook Steve Jasa Dd07081
Flipbook Steve Jasa Dd07081jaspang
 
Межведомственный электронный документооборот в России: зарубежный опыт и поис...
Межведомственный электронный документооборот в России: зарубежный опыт и поис...Межведомственный электронный документооборот в России: зарубежный опыт и поис...
Межведомственный электронный документооборот в России: зарубежный опыт и поис...Natasha Khramtsovsky
 
Pandrade Powerpoint
Pandrade PowerpointPandrade Powerpoint
Pandrade Powerpointjaspang
 
Современные идеи и опыт в области государственного управления: Межведомственн...
Современные идеи и опыт в области государственного управления: Межведомственн...Современные идеи и опыт в области государственного управления: Межведомственн...
Современные идеи и опыт в области государственного управления: Межведомственн...Natasha Khramtsovsky
 
Сохранность документов по личному составу – вопрос обеспечения социальной ста...
Сохранность документов по личному составу – вопрос обеспечения социальной ста...Сохранность документов по личному составу – вопрос обеспечения социальной ста...
Сохранность документов по личному составу – вопрос обеспечения социальной ста...Natasha Khramtsovsky
 
Slideshare test # 2 add voice in SS
Slideshare test # 2 add voice in SSSlideshare test # 2 add voice in SS
Slideshare test # 2 add voice in SSjaspang
 
Проблемы архивного хранения документов на бумажных и электронных носителях
Проблемы архивного хранения документов на бумажных и электронных носителяхПроблемы архивного хранения документов на бумажных и электронных носителях
Проблемы архивного хранения документов на бумажных и электронных носителяхNatasha Khramtsovsky
 
PROEXPOSURE Photographer Ashenafi Gudeta & Weddings
PROEXPOSURE Photographer Ashenafi Gudeta & WeddingsPROEXPOSURE Photographer Ashenafi Gudeta & Weddings
PROEXPOSURE Photographer Ashenafi Gudeta & WeddingsPROEXPOSURE CIC
 

Destaque (20)

Special Hot Air Balloons2
Special Hot Air Balloons2Special Hot Air Balloons2
Special Hot Air Balloons2
 
Why
WhyWhy
Why
 
Module3 Review Fall09
Module3 Review Fall09Module3 Review Fall09
Module3 Review Fall09
 
Zoomable Menu Mockup
Zoomable Menu MockupZoomable Menu Mockup
Zoomable Menu Mockup
 
Предложения Североамериканской группы проекта InterPARES Trust, ноябрь 2013 года
Предложения Североамериканской группы проекта InterPARES Trust, ноябрь 2013 годаПредложения Североамериканской группы проекта InterPARES Trust, ноябрь 2013 года
Предложения Североамериканской группы проекта InterPARES Trust, ноябрь 2013 года
 
Economics 3.2
Economics 3.2Economics 3.2
Economics 3.2
 
Level2 OPS-toets (bijdrage 1)
Level2 OPS-toets (bijdrage 1)Level2 OPS-toets (bijdrage 1)
Level2 OPS-toets (bijdrage 1)
 
Winter Trip to Dahab: For & Against
Winter Trip to Dahab: For & AgainstWinter Trip to Dahab: For & Against
Winter Trip to Dahab: For & Against
 
Flipbook Steve Jasa Dd07081
Flipbook Steve Jasa Dd07081Flipbook Steve Jasa Dd07081
Flipbook Steve Jasa Dd07081
 
Межведомственный электронный документооборот в России: зарубежный опыт и поис...
Межведомственный электронный документооборот в России: зарубежный опыт и поис...Межведомственный электронный документооборот в России: зарубежный опыт и поис...
Межведомственный электронный документооборот в России: зарубежный опыт и поис...
 
Forum021814.v6f
Forum021814.v6fForum021814.v6f
Forum021814.v6f
 
Pandrade Powerpoint
Pandrade PowerpointPandrade Powerpoint
Pandrade Powerpoint
 
Pubquiz
PubquizPubquiz
Pubquiz
 
Современные идеи и опыт в области государственного управления: Межведомственн...
Современные идеи и опыт в области государственного управления: Межведомственн...Современные идеи и опыт в области государственного управления: Межведомственн...
Современные идеи и опыт в области государственного управления: Межведомственн...
 
Сохранность документов по личному составу – вопрос обеспечения социальной ста...
Сохранность документов по личному составу – вопрос обеспечения социальной ста...Сохранность документов по личному составу – вопрос обеспечения социальной ста...
Сохранность документов по личному составу – вопрос обеспечения социальной ста...
 
Slideshare test # 2 add voice in SS
Slideshare test # 2 add voice in SSSlideshare test # 2 add voice in SS
Slideshare test # 2 add voice in SS
 
Kunst op het Hof
Kunst op het HofKunst op het Hof
Kunst op het Hof
 
Проблемы архивного хранения документов на бумажных и электронных носителях
Проблемы архивного хранения документов на бумажных и электронных носителяхПроблемы архивного хранения документов на бумажных и электронных носителях
Проблемы архивного хранения документов на бумажных и электронных носителях
 
Presentatie G1000
Presentatie G1000Presentatie G1000
Presentatie G1000
 
PROEXPOSURE Photographer Ashenafi Gudeta & Weddings
PROEXPOSURE Photographer Ashenafi Gudeta & WeddingsPROEXPOSURE Photographer Ashenafi Gudeta & Weddings
PROEXPOSURE Photographer Ashenafi Gudeta & Weddings
 

Semelhante a TPSE2014 :: Test Driven Development

Introduction to elasticsearch fast lane
Introduction to elasticsearch fast laneIntroduction to elasticsearch fast lane
Introduction to elasticsearch fast laneSomkiat Puisungnoen
 
Improve Education Outcomes Through AI & ML
Improve Education Outcomes Through AI & MLImprove Education Outcomes Through AI & ML
Improve Education Outcomes Through AI & MLAmazon Web Services
 
Introduction to Amazon Go and Amazon Go Tour by Humphrey Chan
Introduction to Amazon Go  and Amazon Go Tour by Humphrey ChanIntroduction to Amazon Go  and Amazon Go Tour by Humphrey Chan
Introduction to Amazon Go and Amazon Go Tour by Humphrey ChanSameer Kenkare
 
AWS Transformation Day London Keynote 2018
AWS Transformation Day London Keynote 2018AWS Transformation Day London Keynote 2018
AWS Transformation Day London Keynote 2018Amazon Web Services
 
AWS Summit Singapore 2019 | The Smart Way to Build an AI & ML Strategy for Yo...
AWS Summit Singapore 2019 | The Smart Way to Build an AI & ML Strategy for Yo...AWS Summit Singapore 2019 | The Smart Way to Build an AI & ML Strategy for Yo...
AWS Summit Singapore 2019 | The Smart Way to Build an AI & ML Strategy for Yo...AWS Summits
 
H2O World - PAAS: Predictive Analytics offered as a Service - Prateem Mandal
H2O World - PAAS: Predictive Analytics offered as a Service - Prateem MandalH2O World - PAAS: Predictive Analytics offered as a Service - Prateem Mandal
H2O World - PAAS: Predictive Analytics offered as a Service - Prateem MandalSri Ambati
 
AWS Transformation Day - Toronto 2018
AWS Transformation Day - Toronto 2018AWS Transformation Day - Toronto 2018
AWS Transformation Day - Toronto 2018Amazon Web Services
 
Session #2: Keynote - What Transformation really means for the Enterprises?
Session #2: Keynote - What Transformation really means for the Enterprises?Session #2: Keynote - What Transformation really means for the Enterprises?
Session #2: Keynote - What Transformation really means for the Enterprises?Amazon Web Services LATAM
 
Webinar: How AT&T is Using Tin Can to Enhance Compliance Training 8/27/14
Webinar: How AT&T is Using Tin Can to Enhance Compliance Training 8/27/14Webinar: How AT&T is Using Tin Can to Enhance Compliance Training 8/27/14
Webinar: How AT&T is Using Tin Can to Enhance Compliance Training 8/27/14Rustici Software
 
Smartphonerewardadways 110112222251 Phpapp02
Smartphonerewardadways 110112222251 Phpapp02Smartphonerewardadways 110112222251 Phpapp02
Smartphonerewardadways 110112222251 Phpapp02hideki hasegawa
 
Smartphone reward by adways
Smartphone reward by adwaysSmartphone reward by adways
Smartphone reward by adways01Booster
 
AWS Transformation Day 2018 - Charlotte NC
AWS Transformation Day 2018 - Charlotte NCAWS Transformation Day 2018 - Charlotte NC
AWS Transformation Day 2018 - Charlotte NCAmazon Web Services
 

Semelhante a TPSE2014 :: Test Driven Development (15)

Introduction to Elasticsearch
Introduction to ElasticsearchIntroduction to Elasticsearch
Introduction to Elasticsearch
 
Introduction to elasticsearch fast lane
Introduction to elasticsearch fast laneIntroduction to elasticsearch fast lane
Introduction to elasticsearch fast lane
 
Improve Education Outcomes Through AI & ML
Improve Education Outcomes Through AI & MLImprove Education Outcomes Through AI & ML
Improve Education Outcomes Through AI & ML
 
Introduction to Amazon Go and Amazon Go Tour by Humphrey Chan
Introduction to Amazon Go  and Amazon Go Tour by Humphrey ChanIntroduction to Amazon Go  and Amazon Go Tour by Humphrey Chan
Introduction to Amazon Go and Amazon Go Tour by Humphrey Chan
 
AWS Transformation Day London Keynote 2018
AWS Transformation Day London Keynote 2018AWS Transformation Day London Keynote 2018
AWS Transformation Day London Keynote 2018
 
MODEL D.pdf
MODEL D.pdfMODEL D.pdf
MODEL D.pdf
 
AWS Summit Singapore 2019 | The Smart Way to Build an AI & ML Strategy for Yo...
AWS Summit Singapore 2019 | The Smart Way to Build an AI & ML Strategy for Yo...AWS Summit Singapore 2019 | The Smart Way to Build an AI & ML Strategy for Yo...
AWS Summit Singapore 2019 | The Smart Way to Build an AI & ML Strategy for Yo...
 
H2O World - PAAS: Predictive Analytics offered as a Service - Prateem Mandal
H2O World - PAAS: Predictive Analytics offered as a Service - Prateem MandalH2O World - PAAS: Predictive Analytics offered as a Service - Prateem Mandal
H2O World - PAAS: Predictive Analytics offered as a Service - Prateem Mandal
 
AWS Transformation Day - Toronto 2018
AWS Transformation Day - Toronto 2018AWS Transformation Day - Toronto 2018
AWS Transformation Day - Toronto 2018
 
Session #2: Keynote - What Transformation really means for the Enterprises?
Session #2: Keynote - What Transformation really means for the Enterprises?Session #2: Keynote - What Transformation really means for the Enterprises?
Session #2: Keynote - What Transformation really means for the Enterprises?
 
Webinar: How AT&T is Using Tin Can to Enhance Compliance Training 8/27/14
Webinar: How AT&T is Using Tin Can to Enhance Compliance Training 8/27/14Webinar: How AT&T is Using Tin Can to Enhance Compliance Training 8/27/14
Webinar: How AT&T is Using Tin Can to Enhance Compliance Training 8/27/14
 
Smartphonerewardadways 110112222251 Phpapp02
Smartphonerewardadways 110112222251 Phpapp02Smartphonerewardadways 110112222251 Phpapp02
Smartphonerewardadways 110112222251 Phpapp02
 
Smartphone reward by adways
Smartphone reward by adwaysSmartphone reward by adways
Smartphone reward by adways
 
AWS Transformation Day 2018 - Charlotte NC
AWS Transformation Day 2018 - Charlotte NCAWS Transformation Day 2018 - Charlotte NC
AWS Transformation Day 2018 - Charlotte NC
 
Jose alfredo 6.ppt
Jose alfredo 6.pptJose alfredo 6.ppt
Jose alfredo 6.ppt
 

Mais de Somkiat Puisungnoen (20)

Next of Java 2022
Next of Java 2022Next of Java 2022
Next of Java 2022
 
Sck spring-reactive
Sck spring-reactiveSck spring-reactive
Sck spring-reactive
 
Part 2 :: Spring Boot testing
Part 2 :: Spring Boot testingPart 2 :: Spring Boot testing
Part 2 :: Spring Boot testing
 
vTalk#1 Microservices with Spring Boot
vTalk#1 Microservices with Spring BootvTalk#1 Microservices with Spring Boot
vTalk#1 Microservices with Spring Boot
 
Lesson learned from React native and Flutter
Lesson learned from React native and FlutterLesson learned from React native and Flutter
Lesson learned from React native and Flutter
 
devops
devops devops
devops
 
Angular :: basic tuning performance
Angular :: basic tuning performanceAngular :: basic tuning performance
Angular :: basic tuning performance
 
Shared code between projects
Shared code between projectsShared code between projects
Shared code between projects
 
Distributed Tracing
Distributed Tracing Distributed Tracing
Distributed Tracing
 
Manage data of service
Manage data of serviceManage data of service
Manage data of service
 
RobotFramework Meetup at Thailand #2
RobotFramework Meetup at Thailand #2RobotFramework Meetup at Thailand #2
RobotFramework Meetup at Thailand #2
 
Visual testing
Visual testingVisual testing
Visual testing
 
Cloud Native App
Cloud Native AppCloud Native App
Cloud Native App
 
Wordpress for Newbie
Wordpress for NewbieWordpress for Newbie
Wordpress for Newbie
 
Sck Agile in Real World
Sck Agile in Real WorldSck Agile in Real World
Sck Agile in Real World
 
Clean you code
Clean you codeClean you code
Clean you code
 
SCK Firestore at CNX
SCK Firestore at CNXSCK Firestore at CNX
SCK Firestore at CNX
 
Unhappiness Developer
Unhappiness DeveloperUnhappiness Developer
Unhappiness Developer
 
The Beauty of BAD code
The Beauty of  BAD codeThe Beauty of  BAD code
The Beauty of BAD code
 
React in the right way
React in the right wayReact in the right way
React in the right way
 

Último

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 

Último (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

TPSE2014 :: Test Driven Development

  • 1. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance สมเกียรติ ปุ๋ยสูงเนิน SPRINT3R โดย บริษัท สยาม๡ํานาญกิจ จํากัด บริษัท ออด-อี (ประเทศไทย) จํากัด และพันธมิตร Thailand Practical Software Engineering 2014
  • 2. C U R R E N T O F T D D SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 3. T E S T D R I V E N D E V E L O P M E N T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 4. A C C E P TA N C E T E S T D R I V E N D E V E L O P M E N T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 5. L A R G E R F E E D B A C K L O O P SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 6. H I S T O R Y O F T D D SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance http://c2.com/cgi/wiki?TenYearsOfTestDrivenDevelopment
  • 7. 1 9 6 0 ’ S SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 8. T H E S E C R E T O F A N C I E N T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance www.l3ak.com
  • 9. Professionals SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Test their code
  • 10. 1 9 7 0 ’ S SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 11. K E N T B E C K SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance http://www.flickr.com/photos/mwichary/2376639066/
  • 12. Separate what from how SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 13. 1 9 8 9 SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 14. S H O R T - C I R C U I T T H E P R O C E S S SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 15. Automated tests SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Confirm features
  • 16. 1 9 9 6 SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 17. T E S T F I R S T I N C 3 P R O J E C T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance http://www.martinfowler.com/bliki/C3.html
  • 18. It’s a change in culture SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 19. X U N I T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 20. E X P A N D T H E W O R L D SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance C 2 W I K I
  • 21. “Working” SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance is not good enough
  • 22. 1 9 9 9 SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 23. T H E O R I G I N O F M O C K O B J E C T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 24. Listen to the tests SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 25. 2 0 0 1 SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 26. C O N T I N U O U S B U I L D SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 27. W O R K O N M Y M A C H I N E ! SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 28. Working system SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance provides feedback
  • 29. Safety culture SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 30. T E S T D OX S T Y L E SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance A Sheep eats grass A Sheep produces good milk A Sheep moves away from dogs
  • 31. Focus on intent SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 32. 2 0 0 2 SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 33. F I R S T T D D B O O K SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Remove duplication Write a fail test before write any code
  • 34. When you are lost, SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance slow down
  • 35. 2 0 0 3 SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 36. A L O T O F B O O K SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 37. 2 0 0 4 SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 38. T D D F O R C U S T O M E R SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 39. Confirm understanding SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance with examples
  • 40. L I V I N G I N R E A L W O R L D SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 41. Legacy code SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance code without tests is
  • 42. N E X T G E N E R AT I O N SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 43. 2 0 0 7 SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 44. T H E R E S E A R C H S U G G E S T S SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance More effort, better quality More visible on project Very hard to get meaningful results
  • 45. U N D E R S TA N D SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 46. U N D E R S TA N D SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Professionals test their code Separate what from how Automatic tests confirm features It’s change in culture
  • 47. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Working is not good enough Listen to the tests Working system provide feedback Focus on intent U N D E R S TA N D
  • 48. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance When you are lost, slow down It’s not only about testing Legacy code is code without tests Understand the principles behind the practice U N D E R S TA N D
  • 49. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Focus Feedback Professionalism T D D E R
  • 50. T E S T S T R U C T U R E SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 51. B A S I C SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Setup Execute Verify Clean-up
  • 52. S E V T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Setup Exercise Verify Teardown
  • 53. A A A SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 54. E X A M P L E SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 55. E X A M P L E SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 56. G O O D T E S T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance P R O P E R T I E S O F
  • 57. A - T R I P SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Automated Thorough Repeatable Independent Professional
  • 58. T E S T T O O L S SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 59. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance X U N I T http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks
  • 60. C O D I N G D O J O SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance http://www.aikido-yamada.eu/
  • 61. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance 1 อ่านว่า 1 2 อ่านว่า 2 3 อ่านว่า Fizz 4 อ่านว่า 4 F I Z Z B U Z Z 5 อ่านว่า Buzz 6 อ่านว่า Fizz 7 อ่านว่า 7 8 อ่านว่า 8 9 อ่านว่า Fizz 10 อ่านว่า Buzz http://en.wikipedia.org/wiki/Fizz_buzz
  • 62. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance 15 อ่านว่า FizzBuzz F I Z Z B U Z Z
  • 63. T E S T D R I V E N D E V E L O P M E N T SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 64. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance All the tests pass There is no duplication Focus your intent S I M P L E D E S I G N R U L E S Classes and methods are minimized
  • 65. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance