• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Testes Unitários/Integrados
 

Testes Unitários/Integrados

on

  • 7,214 views

Apresentação sobre testes unitários feito na nona reunião do .Net Architects.

Apresentação sobre testes unitários feito na nona reunião do .Net Architects.

Statistics

Views

Total Views
7,214
Views on SlideShare
6,808
Embed Views
406

Actions

Likes
2
Downloads
0
Comments
0

5 Embeds 406

http://unplugged.giggio.net 349
http://blog.lambda3.com.br 36
http://www.slideshare.net 14
http://www.linkedin.com 5
http://www.infoblogs.com.br 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Testes Unitários/Integrados Testes Unitários/Integrados Presentation Transcript

    • Objetivo Entender porque testar e o que eu ganho com isso
    • Tipos de testes
    • Integrados Unitários Regressão Funcionais Stress
    • Entendendo: System Under Test (SUT)
    • Caixa preta
    • Caixa branca
    • Testes unitários e integrados sempre são testes de regressão
    • Minha definição
    • “Testes são documentação executável”
    • “Testes são garantia de mudar sem medo”
    • “Testes não são uma obrigação”
    • “Testes libertam”
    • “Testes são divertidos”
    • “Testes esclarecem”
    • Porque não testar?
    • Falta de tempo
    • Demora muito
    • Código legado impossível de testar Problema do ovo e da galinha: Refatoro antes para conseguir testar, ou faço os testes antes para conseguir refatorar?
    • Não é meu trabalho
    • Se compila funciona
    • Falta de testes
    • “Desenvolvedor que não testa é como um cirurgião que não lava as mãos” (tradução livre) Uncle Bob (Robert C. Martin)
    • Sistema sem testes dá medo Produtividade vai para o lixo
    • Código sem testes = código legado Não importa se você escreveu o código esta manhã
    • 5 Ws e 2 Hs When, What, Where, Who, Why, How and How much
    • Quando: o quanto antes?
    • O que: Tudo?
    • Onde: Outsourcing de testes?
    • Quem: quem fez o código
    • Porque: para o paciente não morrer Input Dados Ambiente Fluxo
    • Porque: para facilitar a sua vida
    • Quanto custa: menos do que fazer sem testes Mas não esqueça que testes custam, seja pragmático
    • Produtividade ao longo do projeto Sem testes 16 14 12 produtividade 10 8 6 4 2 Com testes 0 7 Tempo 6 5 produtividade 4 3 2 1 0 Tempo
    • Como? Nas demos eu mostro
    • Técnicas
    • Construa sistemas testáveis SRP - Princípio da resposabilidade única Separação de responsabilidades Coesão Injeção de dependência Service Locator
    • Mocks Rhino Mocks Moq TypeMock
    • Frameworks de automação de testes MSTest MbUnit xUnit nUnit Gallio
    • Integração contínua
    • TDD/BDD/xDD
    • Automatize o setup do ambiente NDbUnit VSTS O seu próprio
    • Regras
    • Nada de check-in com tests falhando Mantenha o código estável o tempo todo => Suporte para gatewayed check-ins no VSTS 2010
    • Testes são escritos junto com o código Não interessa se antes ou depois
    • Testes independem do ambiente Tem que passar em qualquer condição
    • Testes devem descrever o negócio
    • Faça um teste de cada vez Testes com frequência assumem que outras partes do sistema funcionam
    • Livros
    • Artigos sobre Mocks 53 54 55
    • Links úteis • JW on Tests: http://blogs.msdn.com/james_whittaker/ • Giggio on Tests:  http://unplugged.giggio.net?tag=/teste
    • Links úteis (ferramentas) • Mocks – Rhino Mocks:http://ayende.com/projects/rhino- mocks.aspx – Moq: http://code.google.com/p/moq – TypeMock: http://www.typemock.com • Setup – NDbUnit: http://code.google.com/p/ndbunit
    • Links úteis (ferramentas 2) • Rodadores de testes – MSTest/VSTS: http://gofrom.us/14E5 – nUnit: http://www.nunit.org – MbUnit/Gallio: http://www.gallio.org – xUnit: http://www.codeplex.com/xunit – Resharper: http://www.jetbrains.com/resharper