View
1.254
Download
1
Category
Preview:
Citation preview
Rodrigo Vidal
Twitter: @rodrigovidal
www.rodrigovidal.net
Foco em Arquitetura de Software, Boas Práticas, TDD, DDD
Evangelista de Linguagem F#
Professional Scrum Developer
Microsoft Student Partner
Quem sou eu?
Você escreve testes?
Codifica
ErraDebuga
Como escrevemos software?
Primeiro implementamos
Classes altamente acopladas
Código Confuso
Código que precisa de comentários
Código que precisa de documentação
Código que precisa de explicação
Isso gera... Bugs.. Muitos Bugs
Isso gera... Medo.. Muito medo
Fator Motivação
Tem como ser produtivo assim?
Maneira de garantir que o software realiza o esperado E
Está de acordo com os requisitos
O que são testes?
Para ter certeza de que funciona.
Porque testar?
Porque não testar?
Eu sou Jedi! Eu sou Sênior!
Não temos TEMPO!
Você NÃO é bom o suficiente!
Acredite..
“Escrever testes demora muito, eu poderia ja ter implementado direto.”
Sobrinho
Mito..
Não escrever testes te dá uma falsa sensação de velocidade
Verdade..
“Escrever código sem testes é como um cirurgião que não lava aos mãos antes de uma operação”
Robert “UncleBob” Martin
Testar é necessário
“Não escrever testes é anti-ético”Autor desconhecido
Testar é necessário
É um trecho de codigo que executa outro.
Verifica a exatidão de pressupostos
Caso os pressuspostos estejam errados o teste falha, caso contrário o teste passa.
Testes de Unidade
Fast
Independent
Repeatable
Self-Validating
Timely
Principios F.I.R.S.T
Provém feedback real-time
Tendem a melhorar o design da aplicação
Contribuem para refatorações
Servem como exemplos de utilização da sua API
Se está dificil testar, pode melhorar.
Vantagens
Desvantagens
DEMO
Unidade X Integração
Test Driven Development
Red
GreenRefactor
Recommended