SlideShare una empresa de Scribd logo
1 de 47
TDD – Test Driven Development
Marcos Roberto Ferreira
marcos.wp@gmail.com
Sobre
‣ Marcos Roberto Ferreira
– Desenvolvedor na Conta Azul
– Colaborador do GUJavaSC
– 10 anos XP em dev
– 8 anos XP com java

contaazul.com

gujavasc.org
2
AGILE
3
Em um projeto de 6 meses...

Análise

Desenvolvimento

Teste

4
Em um projeto de 6 meses...
...com agile

5
Em um projeto de 6 meses...
...com agile

Planejamento Desenvolvimento

Teste

6
http://manifestoagil.com.br/

http://agilemanifesto.org/
7
Agile methods are adaptive rather than predictive

Agile methods are people-oriented rather than process-oriented

8
http://itsadeliverything.com/wordpress/images//patton-incrementing-mona-lisa.jpg

incrementing

9
http://itsadeliverything.com/wordpress/images//patton-incrementing-mona-lisa.jpg

incrementing

iterating

http://itsadeliverything.com/wordpress/images//patton-iterating-mona-lisa.jpg
10
Kent Beck
XP
Agile
TDD
Desenvolve
Desenvolve

Testa
Testa

Refatora
Refatora
Desenvolvimento
Desenvolvimento

Teste
Teste

Melhora
Melhora
I T!
TOP
S
Seu código é modular?
Seu código é modular?
Seu código é modular?

{
Seu código é modular?

{
Seu código é modular?

{
Seu código é modular?

{
Seu código é modular?
Seu código é modular?
Já tentou IoC?
Já tentou IoC?
Já tentou IoC?
Mock Objects
Mock Objects
Mock Objects
Mock Objects
TDD
Teste
Teste

Desenvolve
Desenvolve

Refatora
Refatora
45
Muito Obrigado!
Marcos Roberto Ferreira
marcos.wp@gmail.com
Images
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•

http://mindlovemisery.files.wordpress.com/2013/07/fairy-tale-castle-slippers.jpg
http://1.bp.blogspot.com/-3W_8FOsJhTE/UCR-FmKDaYI/AAAAAAAAF_8/oFNLxDFBfO8/s1600/waterfall+pic+(9).jpg
http://fc07.deviantart.net/fs70/f/2011/163/1/4/mesh_background___1280x720_by_teamsjk-d3irbsx.jpg
http://blog.dotstore.com.br/wp-content/uploads/2012/05/4-passos-para-reconquista-de-um-cliente-insatisfeito.jpg
http://img0.etsystatic.com/000/0/5692668/il_fullxfull.224993090.jpg
http://ucrtoday.ucr.edu/wp-content/uploads/2012/10/Assassin-bugs.jpg
http://blog.dotstore.com.br/wp-content/uploads/2012/05/4-passos-para-reconquista-de-um-cliente-insatisfeito.jpg
http://cdn.orkin.com/images/box-elder-bug/box-elder-bug-illustration_1500x1200.jpg
http://globoesporte.globo.com/platb/files/157/2010/09/band-aid-01.jpg
http://www.imgbase.info/images/safe-wallpapers/animals/insect/bugs_12736.jpg
http://cache.boston.com/universal/site_graphics/blogs/bigpicture/manuf_02_20/m39_17038559.jpg
http://www.siemens.com/press/pool/de/pressebilder/photonews/PN200812/PN200812-01_300dpi.jpg
http://www.abc.net.au/tv/goodgame/img/m2026139.jpg
http://www.doolwind.com/images/blog/TestDrivenGameDevelopment.png
http://ih1.redbubble.net/image.9142324.6341/sticker,375x360.png

Más contenido relacionado

La actualidad más candente

Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018Wagner Mendes Voltz Fusca
 
Agilidade não é para desenvolvedores - Agile Curitiba Conference
Agilidade não é para desenvolvedores - Agile Curitiba ConferenceAgilidade não é para desenvolvedores - Agile Curitiba Conference
Agilidade não é para desenvolvedores - Agile Curitiba ConferenceWagner Mendes Voltz Fusca
 
QConSP 2014 - Continuous Delivery - Part 06 - Conclusão
QConSP 2014 - Continuous Delivery - Part 06 - ConclusãoQConSP 2014 - Continuous Delivery - Part 06 - Conclusão
QConSP 2014 - Continuous Delivery - Part 06 - ConclusãoRodrigo Russo
 
Você não faz qualidade em Software - TDC Florianópolis 2020
Você não faz qualidade em Software - TDC Florianópolis 2020Você não faz qualidade em Software - TDC Florianópolis 2020
Você não faz qualidade em Software - TDC Florianópolis 2020Wagner Mendes Voltz Fusca
 
Agil das trincheiras
Agil das trincheirasAgil das trincheiras
Agil das trincheirasFelipe Zampa
 
Mauricio Onoda - Processamento de imagens com Deep Learning
Mauricio Onoda - Processamento de imagens com Deep LearningMauricio Onoda - Processamento de imagens com Deep Learning
Mauricio Onoda - Processamento de imagens com Deep LearningAgile Trends
 
Metodologia ágil - VIII Semana das Engenharias - Unicesumar
Metodologia ágil - VIII Semana das Engenharias - UnicesumarMetodologia ágil - VIII Semana das Engenharias - Unicesumar
Metodologia ágil - VIII Semana das Engenharias - UnicesumarWagner Mendes Voltz Fusca
 
Agile Trends 2016 - Feedback wall
Agile Trends 2016 - Feedback wallAgile Trends 2016 - Feedback wall
Agile Trends 2016 - Feedback wallCristiano Basso
 
Upgrade na sprint com práticas do agile testing - QA Ladies 2a Noite
Upgrade na sprint com práticas do agile testing - QA Ladies 2a NoiteUpgrade na sprint com práticas do agile testing - QA Ladies 2a Noite
Upgrade na sprint com práticas do agile testing - QA Ladies 2a NoiteAriane Izac
 
Do Agil ao agil, como evoluimos processos na plataformatec
Do Agil ao agil, como evoluimos processos na plataformatecDo Agil ao agil, como evoluimos processos na plataformatec
Do Agil ao agil, como evoluimos processos na plataformatecBreno Campos
 
Introdução a metodologias Ágeis e o Framework scrum
Introdução a metodologias Ágeis e o Framework scrumIntrodução a metodologias Ágeis e o Framework scrum
Introdução a metodologias Ágeis e o Framework scrumAdriano Negrão
 

La actualidad más candente (20)

Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
 
Agilidade não é para desenvolvedores - Agile Curitiba Conference
Agilidade não é para desenvolvedores - Agile Curitiba ConferenceAgilidade não é para desenvolvedores - Agile Curitiba Conference
Agilidade não é para desenvolvedores - Agile Curitiba Conference
 
Pair programming
Pair programmingPair programming
Pair programming
 
QConSP 2014 - Continuous Delivery - Part 06 - Conclusão
QConSP 2014 - Continuous Delivery - Part 06 - ConclusãoQConSP 2014 - Continuous Delivery - Part 06 - Conclusão
QConSP 2014 - Continuous Delivery - Part 06 - Conclusão
 
Você não faz qualidade em Software - TDC Florianópolis 2020
Você não faz qualidade em Software - TDC Florianópolis 2020Você não faz qualidade em Software - TDC Florianópolis 2020
Você não faz qualidade em Software - TDC Florianópolis 2020
 
Metodologias ágeis no desenvolvimento Wordpress
Metodologias ágeis no desenvolvimento WordpressMetodologias ágeis no desenvolvimento Wordpress
Metodologias ágeis no desenvolvimento Wordpress
 
Seu codigo fede e voce nem sabia - 2020
Seu codigo fede e voce nem sabia - 2020Seu codigo fede e voce nem sabia - 2020
Seu codigo fede e voce nem sabia - 2020
 
Agil das trincheiras
Agil das trincheirasAgil das trincheiras
Agil das trincheiras
 
A transformação ágil com scrum
A transformação ágil com scrumA transformação ágil com scrum
A transformação ágil com scrum
 
Mauricio Onoda - Processamento de imagens com Deep Learning
Mauricio Onoda - Processamento de imagens com Deep LearningMauricio Onoda - Processamento de imagens com Deep Learning
Mauricio Onoda - Processamento de imagens com Deep Learning
 
Metodologia ágil - VIII Semana das Engenharias - Unicesumar
Metodologia ágil - VIII Semana das Engenharias - UnicesumarMetodologia ágil - VIII Semana das Engenharias - Unicesumar
Metodologia ágil - VIII Semana das Engenharias - Unicesumar
 
A transformação ágil com Scrum
A transformação ágil com ScrumA transformação ágil com Scrum
A transformação ágil com Scrum
 
Agile Trends 2016 - Feedback wall
Agile Trends 2016 - Feedback wallAgile Trends 2016 - Feedback wall
Agile Trends 2016 - Feedback wall
 
Design Sprint Webinar: Aprenda a facilitar um Brainstorming mais efetivo!
Design Sprint Webinar: Aprenda a facilitar um Brainstorming mais efetivo!Design Sprint Webinar: Aprenda a facilitar um Brainstorming mais efetivo!
Design Sprint Webinar: Aprenda a facilitar um Brainstorming mais efetivo!
 
Scrum
ScrumScrum
Scrum
 
Palestra agile testing coaching
Palestra agile testing coaching Palestra agile testing coaching
Palestra agile testing coaching
 
Webinar DevOps - Encontros Ágeis
Webinar DevOps - Encontros ÁgeisWebinar DevOps - Encontros Ágeis
Webinar DevOps - Encontros Ágeis
 
Upgrade na sprint com práticas do agile testing - QA Ladies 2a Noite
Upgrade na sprint com práticas do agile testing - QA Ladies 2a NoiteUpgrade na sprint com práticas do agile testing - QA Ladies 2a Noite
Upgrade na sprint com práticas do agile testing - QA Ladies 2a Noite
 
Do Agil ao agil, como evoluimos processos na plataformatec
Do Agil ao agil, como evoluimos processos na plataformatecDo Agil ao agil, como evoluimos processos na plataformatec
Do Agil ao agil, como evoluimos processos na plataformatec
 
Introdução a metodologias Ágeis e o Framework scrum
Introdução a metodologias Ágeis e o Framework scrumIntrodução a metodologias Ágeis e o Framework scrum
Introdução a metodologias Ágeis e o Framework scrum
 

Destacado (20)

Hgcdsbdhfk
HgcdsbdhfkHgcdsbdhfk
Hgcdsbdhfk
 
Polinizacion
PolinizacionPolinizacion
Polinizacion
 
Mapa conceptual tecnología educativa
Mapa conceptual tecnología educativaMapa conceptual tecnología educativa
Mapa conceptual tecnología educativa
 
Stateless load balancing - Research overview
Stateless load balancing - Research overviewStateless load balancing - Research overview
Stateless load balancing - Research overview
 
Auroras de Erik Tomas Villada Giraldo de 705
Auroras de Erik Tomas Villada Giraldo de 705Auroras de Erik Tomas Villada Giraldo de 705
Auroras de Erik Tomas Villada Giraldo de 705
 
Tobías - Matías A. - Matías C.
Tobías - Matías A. - Matías C.Tobías - Matías A. - Matías C.
Tobías - Matías A. - Matías C.
 
Modelos administrativos ruben
Modelos administrativos rubenModelos administrativos ruben
Modelos administrativos ruben
 
SMART board lesson
SMART board lessonSMART board lesson
SMART board lesson
 
SMART board lesson
SMART board lessonSMART board lesson
SMART board lesson
 
Planificación ett
Planificación ettPlanificación ett
Planificación ett
 
sajid
sajidsajid
sajid
 
Aula De Impress Da Angelita
Aula De Impress Da AngelitaAula De Impress Da Angelita
Aula De Impress Da Angelita
 
Pp 5
Pp 5Pp 5
Pp 5
 
IJAZAH S2_Paul David Rey
IJAZAH S2_Paul David ReyIJAZAH S2_Paul David Rey
IJAZAH S2_Paul David Rey
 
Luis M
Luis MLuis M
Luis M
 
Magosto 2012
Magosto 2012Magosto 2012
Magosto 2012
 
Violencia
ViolenciaViolencia
Violencia
 
Pvc de segundo_a_o_educaci_n_primaria
Pvc de segundo_a_o_educaci_n_primariaPvc de segundo_a_o_educaci_n_primaria
Pvc de segundo_a_o_educaci_n_primaria
 
Novo Paradigma Em EducaçãO
Novo Paradigma Em EducaçãONovo Paradigma Em EducaçãO
Novo Paradigma Em EducaçãO
 
slide
slide slide
slide
 

Similar a Introdução a TDD

Mais de 24 anos de Scrum - Ainda faz sentido usar?
Mais de 24 anos de Scrum - Ainda faz sentido usar?Mais de 24 anos de Scrum - Ainda faz sentido usar?
Mais de 24 anos de Scrum - Ainda faz sentido usar?Andrei Tognolo
 
Gerenciando o Zabbix com o SaltStack
Gerenciando o Zabbix com o SaltStackGerenciando o Zabbix com o SaltStack
Gerenciando o Zabbix com o SaltStackAécio Pires
 
1º Meetup Zabbix Meetup do Recife: Aécio Pires - Gerenciando Zabbix com o Sal...
1º Meetup Zabbix Meetup do Recife: Aécio Pires - Gerenciando Zabbix com o Sal...1º Meetup Zabbix Meetup do Recife: Aécio Pires - Gerenciando Zabbix com o Sal...
1º Meetup Zabbix Meetup do Recife: Aécio Pires - Gerenciando Zabbix com o Sal...Zabbix BR
 
Gerenciando o Zabbix com o SaltStack
Gerenciando o Zabbix com o SaltStackGerenciando o Zabbix com o SaltStack
Gerenciando o Zabbix com o SaltStackAécio Pires
 
Scrum: do teórico e filosófico para os desafios reais e avançados na implemen...
Scrum: do teórico e filosófico para os desafios reais e avançados na implemen...Scrum: do teórico e filosófico para os desafios reais e avançados na implemen...
Scrum: do teórico e filosófico para os desafios reais e avançados na implemen...Vitor Massari
 
Transformacao e sustentacao agil
Transformacao e sustentacao agilTransformacao e sustentacao agil
Transformacao e sustentacao agilMauricio Correa
 
Kanban - Agilidade Fora da TI - Case Riachuelo
Kanban - Agilidade Fora da TI - Case RiachueloKanban - Agilidade Fora da TI - Case Riachuelo
Kanban - Agilidade Fora da TI - Case RiachueloFábio Micheletti
 
O que vi na QCon 2012 São Paulo
O que vi na QCon 2012 São PauloO que vi na QCon 2012 São Paulo
O que vi na QCon 2012 São PauloIsmael
 
Gerando Resultados com Scrum: Scrum in a nutshell
Gerando Resultados com Scrum: Scrum in a nutshellGerando Resultados com Scrum: Scrum in a nutshell
Gerando Resultados com Scrum: Scrum in a nutshellDextra
 
Agilidade em TI - Congresso FATEC-SP 2017
Agilidade em TI - Congresso FATEC-SP 2017Agilidade em TI - Congresso FATEC-SP 2017
Agilidade em TI - Congresso FATEC-SP 2017Arthur Fücher
 
Isabella fonseca et_ms_pmi-mg
Isabella fonseca et_ms_pmi-mgIsabella fonseca et_ms_pmi-mg
Isabella fonseca et_ms_pmi-mgIsabella Fonseca
 
Leadership Mindset Anti Patterns - Agile Brazil 2018
Leadership Mindset Anti Patterns - Agile Brazil 2018Leadership Mindset Anti Patterns - Agile Brazil 2018
Leadership Mindset Anti Patterns - Agile Brazil 2018Raphael Molesim
 
Scrum in a nutshell - business perspective
Scrum in a nutshell - business perspectiveScrum in a nutshell - business perspective
Scrum in a nutshell - business perspectiveMarcos Alves
 
#HubEscola2016 | Gestão ágil de projetos para "não TI" | Rafael Rocha
#HubEscola2016 | Gestão ágil de projetos para "não TI" | Rafael Rocha#HubEscola2016 | Gestão ágil de projetos para "não TI" | Rafael Rocha
#HubEscola2016 | Gestão ágil de projetos para "não TI" | Rafael RochaRafael Rocha
 

Similar a Introdução a TDD (20)

Mais de 24 anos de Scrum - Ainda faz sentido usar?
Mais de 24 anos de Scrum - Ainda faz sentido usar?Mais de 24 anos de Scrum - Ainda faz sentido usar?
Mais de 24 anos de Scrum - Ainda faz sentido usar?
 
Gerenciando o Zabbix com o SaltStack
Gerenciando o Zabbix com o SaltStackGerenciando o Zabbix com o SaltStack
Gerenciando o Zabbix com o SaltStack
 
1º Meetup Zabbix Meetup do Recife: Aécio Pires - Gerenciando Zabbix com o Sal...
1º Meetup Zabbix Meetup do Recife: Aécio Pires - Gerenciando Zabbix com o Sal...1º Meetup Zabbix Meetup do Recife: Aécio Pires - Gerenciando Zabbix com o Sal...
1º Meetup Zabbix Meetup do Recife: Aécio Pires - Gerenciando Zabbix com o Sal...
 
Gerenciando o Zabbix com o SaltStack
Gerenciando o Zabbix com o SaltStackGerenciando o Zabbix com o SaltStack
Gerenciando o Zabbix com o SaltStack
 
TDC SP Online 2020 | Design Sprint e Lean Inception se complementam. Como?
TDC SP Online 2020 | Design Sprint e Lean Inception se complementam. Como?TDC SP Online 2020 | Design Sprint e Lean Inception se complementam. Como?
TDC SP Online 2020 | Design Sprint e Lean Inception se complementam. Como?
 
Mini-curso Scrum e Kanban WES 2015
Mini-curso Scrum e Kanban WES 2015Mini-curso Scrum e Kanban WES 2015
Mini-curso Scrum e Kanban WES 2015
 
Scrum: do teórico e filosófico para os desafios reais e avançados na implemen...
Scrum: do teórico e filosófico para os desafios reais e avançados na implemen...Scrum: do teórico e filosófico para os desafios reais e avançados na implemen...
Scrum: do teórico e filosófico para os desafios reais e avançados na implemen...
 
Entregando Software com Valor
Entregando Software com ValorEntregando Software com Valor
Entregando Software com Valor
 
Transformacao e sustentacao agil
Transformacao e sustentacao agilTransformacao e sustentacao agil
Transformacao e sustentacao agil
 
Kanban - Agilidade Fora da TI - Case Riachuelo
Kanban - Agilidade Fora da TI - Case RiachueloKanban - Agilidade Fora da TI - Case Riachuelo
Kanban - Agilidade Fora da TI - Case Riachuelo
 
[Coletivo Ação] Webinar introdução ao Design Sprint Com Mayra de Souza
[Coletivo Ação] Webinar introdução ao Design Sprint Com Mayra de Souza[Coletivo Ação] Webinar introdução ao Design Sprint Com Mayra de Souza
[Coletivo Ação] Webinar introdução ao Design Sprint Com Mayra de Souza
 
Projetos Digitais v.1.16 from 14/03/2015
Projetos Digitais v.1.16 from 14/03/2015Projetos Digitais v.1.16 from 14/03/2015
Projetos Digitais v.1.16 from 14/03/2015
 
O que vi na QCon 2012 São Paulo
O que vi na QCon 2012 São PauloO que vi na QCon 2012 São Paulo
O que vi na QCon 2012 São Paulo
 
Treinamento - Scrum.pptx
Treinamento - Scrum.pptxTreinamento - Scrum.pptx
Treinamento - Scrum.pptx
 
Gerando Resultados com Scrum: Scrum in a nutshell
Gerando Resultados com Scrum: Scrum in a nutshellGerando Resultados com Scrum: Scrum in a nutshell
Gerando Resultados com Scrum: Scrum in a nutshell
 
Agilidade em TI - Congresso FATEC-SP 2017
Agilidade em TI - Congresso FATEC-SP 2017Agilidade em TI - Congresso FATEC-SP 2017
Agilidade em TI - Congresso FATEC-SP 2017
 
Isabella fonseca et_ms_pmi-mg
Isabella fonseca et_ms_pmi-mgIsabella fonseca et_ms_pmi-mg
Isabella fonseca et_ms_pmi-mg
 
Leadership Mindset Anti Patterns - Agile Brazil 2018
Leadership Mindset Anti Patterns - Agile Brazil 2018Leadership Mindset Anti Patterns - Agile Brazil 2018
Leadership Mindset Anti Patterns - Agile Brazil 2018
 
Scrum in a nutshell - business perspective
Scrum in a nutshell - business perspectiveScrum in a nutshell - business perspective
Scrum in a nutshell - business perspective
 
#HubEscola2016 | Gestão ágil de projetos para "não TI" | Rafael Rocha
#HubEscola2016 | Gestão ágil de projetos para "não TI" | Rafael Rocha#HubEscola2016 | Gestão ágil de projetos para "não TI" | Rafael Rocha
#HubEscola2016 | Gestão ágil de projetos para "não TI" | Rafael Rocha
 

Más de Marcos Ferreira

TDC 2015 - Java: from old school to modern art!
TDC 2015 - Java: from old school to modern art!TDC 2015 - Java: from old school to modern art!
TDC 2015 - Java: from old school to modern art!Marcos Ferreira
 
Cloud Computing: Infraestrutura, Aplicações e Desafios
Cloud Computing: Infraestrutura, Aplicações e DesafiosCloud Computing: Infraestrutura, Aplicações e Desafios
Cloud Computing: Infraestrutura, Aplicações e DesafiosMarcos Ferreira
 
Carreira em desenvolvimento de software
Carreira em desenvolvimento de softwareCarreira em desenvolvimento de software
Carreira em desenvolvimento de softwareMarcos Ferreira
 
Andando nas nuvens, uma abordagem prática
Andando nas nuvens, uma abordagem práticaAndando nas nuvens, uma abordagem prática
Andando nas nuvens, uma abordagem práticaMarcos Ferreira
 
Brava developer day 2011
Brava developer day 2011Brava developer day 2011
Brava developer day 2011Marcos Ferreira
 
Apresentação Estágio UDESC
Apresentação Estágio UDESCApresentação Estágio UDESC
Apresentação Estágio UDESCMarcos Ferreira
 
Developer day 2010 - html-css
Developer day   2010 - html-cssDeveloper day   2010 - html-css
Developer day 2010 - html-cssMarcos Ferreira
 
Developer day 2010 - javascript
Developer day   2010 - javascriptDeveloper day   2010 - javascript
Developer day 2010 - javascriptMarcos Ferreira
 

Más de Marcos Ferreira (10)

TDC 2015 - Java: from old school to modern art!
TDC 2015 - Java: from old school to modern art!TDC 2015 - Java: from old school to modern art!
TDC 2015 - Java: from old school to modern art!
 
Cloud Computing: Infraestrutura, Aplicações e Desafios
Cloud Computing: Infraestrutura, Aplicações e DesafiosCloud Computing: Infraestrutura, Aplicações e Desafios
Cloud Computing: Infraestrutura, Aplicações e Desafios
 
Carreira em desenvolvimento de software
Carreira em desenvolvimento de softwareCarreira em desenvolvimento de software
Carreira em desenvolvimento de software
 
Andando nas nuvens, uma abordagem prática
Andando nas nuvens, uma abordagem práticaAndando nas nuvens, uma abordagem prática
Andando nas nuvens, uma abordagem prática
 
Brava developer day 2011
Brava developer day 2011Brava developer day 2011
Brava developer day 2011
 
Apresentação Estágio UDESC
Apresentação Estágio UDESCApresentação Estágio UDESC
Apresentação Estágio UDESC
 
Developer day 2010 - html-css
Developer day   2010 - html-cssDeveloper day   2010 - html-css
Developer day 2010 - html-css
 
Developer day 2010 - javascript
Developer day   2010 - javascriptDeveloper day   2010 - javascript
Developer day 2010 - javascript
 
Kit Processos de Viagem
Kit Processos de ViagemKit Processos de Viagem
Kit Processos de Viagem
 
Apresentação Senac
Apresentação SenacApresentação Senac
Apresentação Senac
 

Introdução a TDD