Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
PraticandoTest Driven Developmentno VS 2010<br />               Christian Cunha   <br />
Christian Cunha<br />	Mais de 10 anos de experiência em desenvolvimento de sistemas em .NET, utiliza metodologias ágeis e ...
O que é TDD ?<br />É uma tecnica de desenvolvimento de software onde o programador escreve o teste antes de escrever o cód...
“The single most important effect of praticing TDD is that forces you as developer to be the first cosumer of your own API...
Não se trata apenas de teste, trata-se de design<br />Test-First  +  Design Incremental<br />
Passos<br />Escreva um teste<br />Faça o teste passar<br />Refatore<br />
Regras<br />Você não pode escrever mais nenhum teste além do que o suficiente para que haja falha.<br />Você não pode escr...
Vantagens<br />Pensar do ponto de vista do cliente<br />Testes relevantes<br />Cobertura de código (não há código morto)<b...
Sistem Under Test<br />É a menor parte do sistema que está sendo testada. <br />Em um teste devemos ter apenas um SUT, des...
Dummy<br />Objetos que são passados mas nunca são usados<br />Geralmente são usados para preencher listas de paramentros<b...
Fake<br />Objetos com uma implementação real mas que são usados em testes com seu comportamento modificado<br />Um bom exe...
Stubs<br />Objetos que respondem a chamadas durante o teste e que pode armazenar informações sobre essas chamadas<br />Stu...
Mocks<br />Objetos pre-programados com expectativas de chamadas e paramentros recebidos  afim de testar os comportamentos ...
DEMONSTRAÇÃO<br />Criar um evento que será uma palestra com um número determinado de lugares<br />Poderão se inscrever des...
Referencias<br />Kent Beck <br />Livro: Test Driven Development: By Example<br />Martin Fowler<br />http://martinfowler.co...
PraticandoTest Driven Developmentno VS 2010<br />               Christian Cunha   <br />
Upcoming SlideShare
Loading in …5
×

TDD no Community Launch 2010 - Christian Cunha

922 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

TDD no Community Launch 2010 - Christian Cunha

  1. 1. PraticandoTest Driven Developmentno VS 2010<br /> Christian Cunha <br />
  2. 2. Christian Cunha<br /> Mais de 10 anos de experiência em desenvolvimento de sistemas em .NET, utiliza metodologias ágeis e é um dos fundadores da WhiteFox. <br />Blog: cccunha.wordpress.com Twitter: twitter.com/cunha_br<br />whitefox.com.br<br />twitter.com/whitefoxbr<br />facebook.com/whitefoxsoftware<br />
  3. 3. O que é TDD ?<br />É uma tecnica de desenvolvimento de software onde o programador escreve o teste antes de escrever o código que irá implementar a funcionalidade desejada.<br />Escreva o teste antes de escrever o código<br />
  4. 4. “The single most important effect of praticing TDD is that forces you as developer to be the first cosumer of your own API.” Brian Button<br />
  5. 5. Não se trata apenas de teste, trata-se de design<br />Test-First + Design Incremental<br />
  6. 6. Passos<br />Escreva um teste<br />Faça o teste passar<br />Refatore<br />
  7. 7. Regras<br />Você não pode escrever mais nenhum teste além do que o suficiente para que haja falha.<br />Você não pode escrever nenhum código além do necessário para fazer o teste passar<br />Você só pode refatorar o código quando todos os testes passarem<br />Elimine a duplicação<br />
  8. 8. Vantagens<br />Pensar do ponto de vista do cliente<br />Testes relevantes<br />Cobertura de código (não há código morto)<br />Documentação executável<br />Perde o medo de refactor<br />Boas práticas de programação<br />Economia de tempo e dinheiro em manutenções<br />
  9. 9. Sistem Under Test<br />É a menor parte do sistema que está sendo testada. <br />Em um teste devemos ter apenas um SUT, desta forma todos os outros objetos são auxiliares, logo não devemos nos preocupar em testa-los neste mesmo teste.<br />
  10. 10. Dummy<br />Objetos que são passados mas nunca são usados<br />Geralmente são usados para preencher listas de paramentros<br />
  11. 11. Fake<br />Objetos com uma implementação real mas que são usados em testes com seu comportamento modificado<br />Um bom exemplo seria um objeto que simula dados trazidos de um banco de dados<br />
  12. 12. Stubs<br />Objetos que respondem a chamadas durante o teste e que pode armazenar informações sobre essas chamadas<br />Stubs geralmente auxiliam o teste de SUT por meio de verificações de estados<br />
  13. 13. Mocks<br />Objetos pre-programados com expectativas de chamadas e paramentros recebidos afim de testar os comportamentos e iterações de um SUT<br />Mocks geralmente são usados nos testes para simular recursos ou objectos que ainda não existem ou que não temos controle<br />
  14. 14. DEMONSTRAÇÃO<br />Criar um evento que será uma palestra com um número determinado de lugares<br />Poderão se inscrever desenvolvedores e estudantes<br />Deve ser possível obter número de desenvolvedores e estudantes inscritos na palestra<br />O número de inscrições não pode exceder ao número de lugares<br />
  15. 15. Referencias<br />Kent Beck <br />Livro: Test Driven Development: By Example<br />Martin Fowler<br />http://martinfowler.com/articles/mocksArentStubs.html<br />.Net Pragmático<br />http://rodbv.com/blog<br />Blog Vinicius Quaiato<br />http://viniciusquaiato.com/blog<br />
  16. 16. PraticandoTest Driven Developmentno VS 2010<br /> Christian Cunha <br />

×