SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Downloaden Sie, um offline zu lesen
TDD, introdução sem
mágica!
Bruno Henrique - Garu
Test Drive Development
O que é TDD?
TDD é sobre testes de
software?
Não
TDD te faz pensar no que
você não está preparado
para pensar nesse
momento.
Permite pivotar de forma
mais fácil e barata.
TDD melhora minha
arquitetura?
Não
TDD melhora minha OO?
Não
O TDD irá te apontar
falhas, mas você terá que
mudar isso "sozinho".
O TDD te faz usar baby
steps.
Não, ele não faz isso.
TDD é sobre ser capaz de
fazer baby steps
Tenho que testar tudo?
Não
Como assim?
"Tudo" é muito relativo,
você tem que testar o que
é importante para seu
negócio.
...se conseguir ter 100%
de cobertura, será muito
bom.
Testar antes ou depois?
Se você está praticando
TDD, a resposta é...?
Antes
Por quê?
Tenho que refatorar?
No ciclo do TDD sim,
você tem.
O código de teste
também tem que ser
refatorado
...ele faz parte do legado
do software
"Mas escrever código de
teste é improdutivo."
Capataz
Existe uma curva de
aprendizagem
inicialmente, mas que
logo depois volta ao
normal.
Referências
Mauricio Aniche - ( blog | slideshare)
Referências do Aniche sobre TDD - http://www.aniche.com.
br/2010/04/referencias-sobre-tdd/
Tornando TDD Simples: Problemas e Soluções para Implementadores -
http://www.infoq.com/br/articles/levison-TDD-adoption-strategy
Métodos ágeis: o que é folclore e o que é real? - http://www.infoq.
com/br/presentations/agile-realidade-folclore
Test Driven Development: By Example - http://bookqueue.net/books/4882-
test-driven-development-by-example
Growing Object-Oriented Software, Guided by Tests - http://bookqueue.
net/books/4883-growing-object-oriented-software-guided-by-tests
Test-Driven Development: Teste e Design no Mundo Real - http:
//bookqueue.net/books/4886-test-driven-development-teste-e-design-no-
mundo-real
Obrigado!
squall.bruno@gmail.com
github.com/brunohenrique
@GaruHenr

Weitere ähnliche Inhalte

Was ist angesagt?

Então você quer ser gerente de projetos? Conte-me mais sobre isso...
Então você quer ser gerente de projetos? Conte-me mais sobre isso...Então você quer ser gerente de projetos? Conte-me mais sobre isso...
Então você quer ser gerente de projetos? Conte-me mais sobre isso...Fernando Ultremare
 
Greenbar - Testes automatizados na sua empresa
Greenbar - Testes automatizados na sua empresaGreenbar - Testes automatizados na sua empresa
Greenbar - Testes automatizados na sua empresaRafael Ponte
 
TDC 2012 TDD e 20 coisas que você precisa saber
TDC 2012 TDD e 20 coisas que você precisa saberTDC 2012 TDD e 20 coisas que você precisa saber
TDC 2012 TDD e 20 coisas que você precisa saberCamilo Lopes
 
Como TDD pode influenciar na construção do seu Produto?
Como TDD pode influenciar na construção do seu Produto?Como TDD pode influenciar na construção do seu Produto?
Como TDD pode influenciar na construção do seu Produto?Raphael Paiva
 
Lean e a Engenharia de Software
Lean e a Engenharia de SoftwareLean e a Engenharia de Software
Lean e a Engenharia de SoftwareRafael Glanzner
 
aGITe antes de versionar
aGITe antes de versionaraGITe antes de versionar
aGITe antes de versionars4nx
 
Lightning talk Test-Driven Development - TDD
Lightning talk Test-Driven Development - TDDLightning talk Test-Driven Development - TDD
Lightning talk Test-Driven Development - TDDWillians De Paula Pereira
 
Introdução a Modelagem
Introdução a ModelagemIntrodução a Modelagem
Introdução a ModelagemRodrigo Branas
 
Gerencie sua carreira. Seja um desenvolvedor melhor!
Gerencie sua carreira. Seja um desenvolvedor melhor!Gerencie sua carreira. Seja um desenvolvedor melhor!
Gerencie sua carreira. Seja um desenvolvedor melhor!Sandro Giacomozzi
 
Oficina FLISOL Curitiba - TDD, pequenos passos fazem toda diferença
Oficina FLISOL Curitiba - TDD, pequenos passos fazem toda diferençaOficina FLISOL Curitiba - TDD, pequenos passos fazem toda diferença
Oficina FLISOL Curitiba - TDD, pequenos passos fazem toda diferençaAndre Cardoso
 
1 2 3 - Testando - Automatizando os testes de software
1 2 3 - Testando - Automatizando os testes de software1 2 3 - Testando - Automatizando os testes de software
1 2 3 - Testando - Automatizando os testes de softwareHeider Lopes
 
Falácias e outras ilusões sobre Teste Ágil
Falácias e outras ilusões sobre Teste ÁgilFalácias e outras ilusões sobre Teste Ágil
Falácias e outras ilusões sobre Teste ÁgilMario Ramos
 
Facilitando o desenvolvimento orientado a testes em aplicações PHP
Facilitando o desenvolvimento orientado a testes em aplicações PHPFacilitando o desenvolvimento orientado a testes em aplicações PHP
Facilitando o desenvolvimento orientado a testes em aplicações PHPPedro Chaves
 
Testes de software
Testes de softwareTestes de software
Testes de softwareVitor Castro
 
Carreira na área de Testes de Software - Meetup TestGirls
Carreira na área de Testes de Software - Meetup TestGirlsCarreira na área de Testes de Software - Meetup TestGirls
Carreira na área de Testes de Software - Meetup TestGirlsNhaiara Ramos
 

Was ist angesagt? (19)

Então você quer ser gerente de projetos? Conte-me mais sobre isso...
Então você quer ser gerente de projetos? Conte-me mais sobre isso...Então você quer ser gerente de projetos? Conte-me mais sobre isso...
Então você quer ser gerente de projetos? Conte-me mais sobre isso...
 
Coding Dojo em 10 Minutos!
Coding Dojo em 10 Minutos!Coding Dojo em 10 Minutos!
Coding Dojo em 10 Minutos!
 
Greenbar - Testes automatizados na sua empresa
Greenbar - Testes automatizados na sua empresaGreenbar - Testes automatizados na sua empresa
Greenbar - Testes automatizados na sua empresa
 
TDC 2012 TDD e 20 coisas que você precisa saber
TDC 2012 TDD e 20 coisas que você precisa saberTDC 2012 TDD e 20 coisas que você precisa saber
TDC 2012 TDD e 20 coisas que você precisa saber
 
Como TDD pode influenciar na construção do seu Produto?
Como TDD pode influenciar na construção do seu Produto?Como TDD pode influenciar na construção do seu Produto?
Como TDD pode influenciar na construção do seu Produto?
 
Scrum Class
Scrum ClassScrum Class
Scrum Class
 
Lean e a Engenharia de Software
Lean e a Engenharia de SoftwareLean e a Engenharia de Software
Lean e a Engenharia de Software
 
aGITe antes de versionar
aGITe antes de versionaraGITe antes de versionar
aGITe antes de versionar
 
Lightning talk Test-Driven Development - TDD
Lightning talk Test-Driven Development - TDDLightning talk Test-Driven Development - TDD
Lightning talk Test-Driven Development - TDD
 
Introdução a Modelagem
Introdução a ModelagemIntrodução a Modelagem
Introdução a Modelagem
 
Gerencie sua carreira. Seja um desenvolvedor melhor!
Gerencie sua carreira. Seja um desenvolvedor melhor!Gerencie sua carreira. Seja um desenvolvedor melhor!
Gerencie sua carreira. Seja um desenvolvedor melhor!
 
Clean Code
Clean CodeClean Code
Clean Code
 
Oficina FLISOL Curitiba - TDD, pequenos passos fazem toda diferença
Oficina FLISOL Curitiba - TDD, pequenos passos fazem toda diferençaOficina FLISOL Curitiba - TDD, pequenos passos fazem toda diferença
Oficina FLISOL Curitiba - TDD, pequenos passos fazem toda diferença
 
1 2 3 - Testando - Automatizando os testes de software
1 2 3 - Testando - Automatizando os testes de software1 2 3 - Testando - Automatizando os testes de software
1 2 3 - Testando - Automatizando os testes de software
 
Falácias e outras ilusões sobre Teste Ágil
Falácias e outras ilusões sobre Teste ÁgilFalácias e outras ilusões sobre Teste Ágil
Falácias e outras ilusões sobre Teste Ágil
 
Facilitando o desenvolvimento orientado a testes em aplicações PHP
Facilitando o desenvolvimento orientado a testes em aplicações PHPFacilitando o desenvolvimento orientado a testes em aplicações PHP
Facilitando o desenvolvimento orientado a testes em aplicações PHP
 
Testes de software
Testes de softwareTestes de software
Testes de software
 
Introdução a TDD
Introdução a TDDIntrodução a TDD
Introdução a TDD
 
Carreira na área de Testes de Software - Meetup TestGirls
Carreira na área de Testes de Software - Meetup TestGirlsCarreira na área de Testes de Software - Meetup TestGirls
Carreira na área de Testes de Software - Meetup TestGirls
 

Andere mochten auch

DevCamp - O papel de um testador em uma equipe ágil
DevCamp - O papel de um testador em uma equipe ágilDevCamp - O papel de um testador em uma equipe ágil
DevCamp - O papel de um testador em uma equipe ágilElias Nogueira
 
presentations app univerteam portugues pdf
presentations app univerteam portugues pdfpresentations app univerteam portugues pdf
presentations app univerteam portugues pdfDonizete Cardoso
 
Palestra ABA Eduardo Barbato 2012
Palestra ABA Eduardo Barbato 2012Palestra ABA Eduardo Barbato 2012
Palestra ABA Eduardo Barbato 2012Eduardo Barbato
 
Meu produto não tem um milhão de usuários, e agora
Meu produto não tem um milhão de usuários, e agoraMeu produto não tem um milhão de usuários, e agora
Meu produto não tem um milhão de usuários, e agoraFlavio Logullo
 
Design Thinking - Empatia, experimentação e Colaboração
Design Thinking - Empatia, experimentação e ColaboraçãoDesign Thinking - Empatia, experimentação e Colaboração
Design Thinking - Empatia, experimentação e ColaboraçãoBruno Eugênio
 
Beyond Creativity - A workshop about Design Thinking
Beyond Creativity - A workshop about Design ThinkingBeyond Creativity - A workshop about Design Thinking
Beyond Creativity - A workshop about Design ThinkingNatalia Arsand
 
User Experience + A/B Testing: o design focado na conversão
User Experience + A/B Testing: o design focado na conversãoUser Experience + A/B Testing: o design focado na conversão
User Experience + A/B Testing: o design focado na conversãoMaria Lígia Klokner
 
Innovation Process at design firms
Innovation Process at design firmsInnovation Process at design firms
Innovation Process at design firmsRiyaz Vazir
 
User Experience Design: o que é isso? - UNIVEM 2016
User Experience Design: o que é isso? - UNIVEM 2016User Experience Design: o que é isso? - UNIVEM 2016
User Experience Design: o que é isso? - UNIVEM 2016Samantha Rosa
 
Como não testar seu projeto de software
Como não testar seu projeto de softwareComo não testar seu projeto de software
Como não testar seu projeto de softwarealexandre freire
 
Karuan Bertoluci - Inovação e UX: Estética ou Funcionalidade?
Karuan Bertoluci - Inovação e UX: Estética ou Funcionalidade?Karuan Bertoluci - Inovação e UX: Estética ou Funcionalidade?
Karuan Bertoluci - Inovação e UX: Estética ou Funcionalidade?Karuan Bertoluci
 
Agile UX: Projetando a User Experience no Mundo Ágil
Agile UX: Projetando a User Experience no Mundo ÁgilAgile UX: Projetando a User Experience no Mundo Ágil
Agile UX: Projetando a User Experience no Mundo ÁgilDiogo Riker
 
Treinamento Design Thinking 2015
Treinamento Design Thinking 2015Treinamento Design Thinking 2015
Treinamento Design Thinking 2015Victor Gonçalves
 

Andere mochten auch (20)

Screen shots
Screen shotsScreen shots
Screen shots
 
DevCamp - O papel de um testador em uma equipe ágil
DevCamp - O papel de um testador em uma equipe ágilDevCamp - O papel de um testador em uma equipe ágil
DevCamp - O papel de um testador em uma equipe ágil
 
Cocriando novos Modelos de Negócios
Cocriando novos Modelos de NegóciosCocriando novos Modelos de Negócios
Cocriando novos Modelos de Negócios
 
presentations app univerteam portugues pdf
presentations app univerteam portugues pdfpresentations app univerteam portugues pdf
presentations app univerteam portugues pdf
 
Palestra ABA Eduardo Barbato 2012
Palestra ABA Eduardo Barbato 2012Palestra ABA Eduardo Barbato 2012
Palestra ABA Eduardo Barbato 2012
 
2Show portfólio
2Show portfólio2Show portfólio
2Show portfólio
 
Cocoa Touch Framework 8
Cocoa Touch Framework 8Cocoa Touch Framework 8
Cocoa Touch Framework 8
 
Meu produto não tem um milhão de usuários, e agora
Meu produto não tem um milhão de usuários, e agoraMeu produto não tem um milhão de usuários, e agora
Meu produto não tem um milhão de usuários, e agora
 
Palestra Empreendedorismo
Palestra EmpreendedorismoPalestra Empreendedorismo
Palestra Empreendedorismo
 
YOU Educação: Apresentação - Euripedes Magalhães
YOU Educação: Apresentação - Euripedes MagalhãesYOU Educação: Apresentação - Euripedes Magalhães
YOU Educação: Apresentação - Euripedes Magalhães
 
Design Thinking - Empatia, experimentação e Colaboração
Design Thinking - Empatia, experimentação e ColaboraçãoDesign Thinking - Empatia, experimentação e Colaboração
Design Thinking - Empatia, experimentação e Colaboração
 
Beyond Creativity - A workshop about Design Thinking
Beyond Creativity - A workshop about Design ThinkingBeyond Creativity - A workshop about Design Thinking
Beyond Creativity - A workshop about Design Thinking
 
User Experience + A/B Testing: o design focado na conversão
User Experience + A/B Testing: o design focado na conversãoUser Experience + A/B Testing: o design focado na conversão
User Experience + A/B Testing: o design focado na conversão
 
Innovation Process at design firms
Innovation Process at design firmsInnovation Process at design firms
Innovation Process at design firms
 
IoT o que é
IoT o que éIoT o que é
IoT o que é
 
User Experience Design: o que é isso? - UNIVEM 2016
User Experience Design: o que é isso? - UNIVEM 2016User Experience Design: o que é isso? - UNIVEM 2016
User Experience Design: o que é isso? - UNIVEM 2016
 
Como não testar seu projeto de software
Como não testar seu projeto de softwareComo não testar seu projeto de software
Como não testar seu projeto de software
 
Karuan Bertoluci - Inovação e UX: Estética ou Funcionalidade?
Karuan Bertoluci - Inovação e UX: Estética ou Funcionalidade?Karuan Bertoluci - Inovação e UX: Estética ou Funcionalidade?
Karuan Bertoluci - Inovação e UX: Estética ou Funcionalidade?
 
Agile UX: Projetando a User Experience no Mundo Ágil
Agile UX: Projetando a User Experience no Mundo ÁgilAgile UX: Projetando a User Experience no Mundo Ágil
Agile UX: Projetando a User Experience no Mundo Ágil
 
Treinamento Design Thinking 2015
Treinamento Design Thinking 2015Treinamento Design Thinking 2015
Treinamento Design Thinking 2015
 

Ähnlich wie TDD introdução sem mágica

Test-Driven Development serve pra mim?
Test-Driven Development serve pra mim?Test-Driven Development serve pra mim?
Test-Driven Development serve pra mim?Maurício Aniche
 
Tdd direto das trincheiras
Tdd direto das trincheirasTdd direto das trincheiras
Tdd direto das trincheirasScumpb
 
TDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao testeTDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao testeRafaela Prado
 
TDD direto das trincheiras
TDD direto das trincheirasTDD direto das trincheiras
TDD direto das trincheirasLuiz Borba
 
TDD Direto das Trincheiras versao 2
TDD Direto das Trincheiras versao 2TDD Direto das Trincheiras versao 2
TDD Direto das Trincheiras versao 2Luiz Borba
 
UnP Eng. Software - Aula 27
UnP Eng. Software - Aula 27UnP Eng. Software - Aula 27
UnP Eng. Software - Aula 27Hélio Medeiros
 
Introdução ao Test Driven Development (TDD)
Introdução ao Test Driven Development (TDD)Introdução ao Test Driven Development (TDD)
Introdução ao Test Driven Development (TDD)Lucas Nery
 
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...Adolfo Neto
 
Os Benefícios dos testes no desenvolvimento de software
Os Benefícios dos testes no desenvolvimento de softwareOs Benefícios dos testes no desenvolvimento de software
Os Benefícios dos testes no desenvolvimento de softwareDextra Sistemas / Etec Itu
 
Apresentação tcc final
Apresentação tcc finalApresentação tcc final
Apresentação tcc finalJhool Flores
 
Uma abordagem às Metodologias Ágeis em Gerência de Projetos
Uma abordagem às Metodologias Ágeis em Gerência de ProjetosUma abordagem às Metodologias Ágeis em Gerência de Projetos
Uma abordagem às Metodologias Ágeis em Gerência de ProjetosGiovani Elísio Silva
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaRogerio Fontes
 
Coding Dojo - Funcionamento
Coding Dojo - FuncionamentoCoding Dojo - Funcionamento
Coding Dojo - Funcionamentothiagodp
 
Test Driven Development - Em busca de feedback util e concreto
Test Driven Development - Em busca de feedback util e concretoTest Driven Development - Em busca de feedback util e concreto
Test Driven Development - Em busca de feedback util e concretoHélio Medeiros
 
Introdução ao TDD nas soluções Global AppCasting
Introdução ao TDD nas soluções Global AppCastingIntrodução ao TDD nas soluções Global AppCasting
Introdução ao TDD nas soluções Global AppCastingPedro Pereira Martins
 
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Marcio Miyamoto
 

Ähnlich wie TDD introdução sem mágica (20)

Test-Driven Development serve pra mim?
Test-Driven Development serve pra mim?Test-Driven Development serve pra mim?
Test-Driven Development serve pra mim?
 
Test First, TDD e outros Bichos
Test First, TDD e outros BichosTest First, TDD e outros Bichos
Test First, TDD e outros Bichos
 
Tdd direto das trincheiras
Tdd direto das trincheirasTdd direto das trincheiras
Tdd direto das trincheiras
 
TDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao testeTDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao teste
 
TDD direto das trincheiras
TDD direto das trincheirasTDD direto das trincheiras
TDD direto das trincheiras
 
TDD Direto das Trincheiras versao 2
TDD Direto das Trincheiras versao 2TDD Direto das Trincheiras versao 2
TDD Direto das Trincheiras versao 2
 
UnP Eng. Software - Aula 27
UnP Eng. Software - Aula 27UnP Eng. Software - Aula 27
UnP Eng. Software - Aula 27
 
Tdd x testes unidades
Tdd x testes unidadesTdd x testes unidades
Tdd x testes unidades
 
Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
 
Introdução ao Test Driven Development (TDD)
Introdução ao Test Driven Development (TDD)Introdução ao Test Driven Development (TDD)
Introdução ao Test Driven Development (TDD)
 
Teste Ágeis para todo o time
Teste Ágeis para todo o timeTeste Ágeis para todo o time
Teste Ágeis para todo o time
 
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
 
Os Benefícios dos testes no desenvolvimento de software
Os Benefícios dos testes no desenvolvimento de softwareOs Benefícios dos testes no desenvolvimento de software
Os Benefícios dos testes no desenvolvimento de software
 
Apresentação tcc final
Apresentação tcc finalApresentação tcc final
Apresentação tcc final
 
Uma abordagem às Metodologias Ágeis em Gerência de Projetos
Uma abordagem às Metodologias Ágeis em Gerência de ProjetosUma abordagem às Metodologias Ágeis em Gerência de Projetos
Uma abordagem às Metodologias Ágeis em Gerência de Projetos
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis Uberlândia
 
Coding Dojo - Funcionamento
Coding Dojo - FuncionamentoCoding Dojo - Funcionamento
Coding Dojo - Funcionamento
 
Test Driven Development - Em busca de feedback util e concreto
Test Driven Development - Em busca de feedback util e concretoTest Driven Development - Em busca de feedback util e concreto
Test Driven Development - Em busca de feedback util e concreto
 
Introdução ao TDD nas soluções Global AppCasting
Introdução ao TDD nas soluções Global AppCastingIntrodução ao TDD nas soluções Global AppCasting
Introdução ao TDD nas soluções Global AppCasting
 
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
 

TDD introdução sem mágica