TDD em 220V
-
Upload
xanwerneck -
Category
Documents
-
view
207 -
download
0
description
Transcript of TDD em 220V
TEST DRIVEN DEVELOPMENT
RECORDAR…
TESTES
DE
SOFTWARE
PRINCIPAIS
CONCEITOS
TESTE DE
UNIDADE
TESTE DE
INTEGRAÇÃO
TESTE
FUNCIONAL
TESTE DE
TENSÃO
TESTE DE
ACEITAÇÃO
TESTE
UNITÁRIO
TEST DRIVEN DEVELOPMENT
TDD=
TEST DRIVEN DEVELOPMENT
ACEITAÇÃO
TENSÃO
FUNCIONAL
INTEGRAÇÃO
UNITÁRIO
PATTERNS
TEST DRIVEN DEVELOPMENT
EMTDD
TESTES
TEST DRIVEN DEVELOPMENT
ISOLADOS
TESTES
TESTES
TESTES
* A execução de um teste não pode afetar outro teste.
TESTES
TEST DRIVEN DEVELOPMENT
TESTES
TESTES
TESTES
LISTA
* Fazer uma lista com todos os testes que o desenvolvedor acredita que será necessário escrever.
TEST DRIVEN DEVELOPMENT
FAÇA O TESTE
* Os testes devem ser escritos antes do código que será testado.
DADOS
TEST DRIVEN DEVELOPMENT
TESTES
EVIDENTES
DADOS
* Devem ser utilizados dados que tornem os testes fáceis de ler e seguir.
* Devem ser incluídos nos testes os dados esperados e o resultado atual.
POR QUE
TEST DRIVEN DEVELOPMENT
ONDE ESTÁ
TEST DRIVEN DEVELOPMENT
OBUG?
CORRIJA
RÁPIDO
TEST DRIVEN DEVELOPMENT
EN
TE
ND
A
TEST DRIVEN DEVELOPMENT
ME
LH
OR
CICLO
TEST DRIVEN DEVELOPMENT
DEVIDA
Adicionarum teste
Executaro teste
Modificar
Executaro teste
Ok
Erro Ok…
Adiciona
Teste
Vejatestefalhar
EscrevaCódigo
Rode ostestes
Refatore
E AGORA?
REGRAS
TEST DRIVEN DEVELOPMENT
BOAS PRÁTICAS
TDD
Especificar os testes, elaborando uma lista de
testes a serem executados.
Iniciar pelo teste mais simples.
Iniciar a construção do código pela construção
do teste.
Construir apenas o necessário que deseja
testar.
Evitar construir testes grandes, buscar dividir
em blocos.
JUnitFramework em JAVA
SHOW
ME
THE
CODE
JUnitFramework em JAVA
THE CODE IS THE DESIGN
import static org.junit.Assert.*;
import org.junit.Test;
public class TestCalculator{
@Test
public void testAdiciona() {
Calculator calcula = new Calculator();
double result = calcula.add(1.0,5.0);
assertEquals(6.0, result, 0);
}
}
JUnitFramework em JAVA
MEU TESTE
* Método de teste de unidade que garante a validação do método de soma da classe Calculator.
public class Calculator{
public double add(double numero1, double numero2){
return numero1 + numero2;
}
public double sub(double numero1, double numero2){
return numero1 - numero2;
}
public double mult(double numero1, double numero2){
return numero1 * numero2;
}
public double div(double numero1, double numero2){
return numero1 / numero2;
}
}
JUnitFramework em JAVA
MEU PROGRAMA
KEEP
THE
BAR
GREEN
JUnitFramework em JAVA
TEST DRIVEN DEVELOPMENT
GASPARETO, Otávio. Test Driven Development, Rio Grande do Sul, 2013. Disponível em: < http://www.inf.ufrgs.br/~cesantin/TDD-Otavio.pdf>. Acesso em: 22 mar. 2013.
REFERÊNCIAS BIBLIOGRÁFICAS
LOPES, Camilo. Princípios de TDD, 2012. Disponível em: < http://imasters.com.br/artigo/24242/desenvolvimento/principios-de-test-driven-development-tdd/>. Acesso em: 30 mar. 2013.
http://www.agiledata.org/essays/tdd.html
http://pt.wikipedia.org/wiki/Test_Driven_Development
GAMA, Alexandre. TDD Simples e Prático, Parte 1. Disponível em: <http://www.devmedia.com.br/tdd-simples-e-pratico-parte-i/18533>Acesso em: 30 mar. 2013.
MASSOL, Vincent e HUDTED, Ted. Junit em Ação, Rio de Janeiro, Editora Ciência Moderna, 1ª edição, 2005.
STEPHENS, Matt e ROSENBERG, Doug. Design Driven Testing, Estados Unidos da América, Springer Science+Business Media, 2010.
DICAS DE LEITURA