Download pdf - TDD em 220V

Transcript
Page 1: TDD em 220V

TEST DRIVEN DEVELOPMENT

Page 2: TDD em 220V

RECORDAR…

Page 3: TDD em 220V
Page 4: TDD em 220V

TESTES

DE

SOFTWARE

Page 5: TDD em 220V

PRINCIPAIS

CONCEITOS

Page 6: TDD em 220V
Page 7: TDD em 220V

TESTE DE

UNIDADE

Page 8: TDD em 220V
Page 9: TDD em 220V

TESTE DE

INTEGRAÇÃO

Page 10: TDD em 220V
Page 11: TDD em 220V

TESTE

FUNCIONAL

Page 12: TDD em 220V
Page 13: TDD em 220V

TESTE DE

TENSÃO

Page 14: TDD em 220V
Page 15: TDD em 220V

TESTE DE

ACEITAÇÃO

Page 16: TDD em 220V
Page 17: TDD em 220V

TESTE

UNITÁRIO

TEST DRIVEN DEVELOPMENT

TDD=

Page 18: TDD em 220V

TEST DRIVEN DEVELOPMENT

ACEITAÇÃO

TENSÃO

FUNCIONAL

INTEGRAÇÃO

UNITÁRIO

Page 19: TDD em 220V

PATTERNS

TEST DRIVEN DEVELOPMENT

EMTDD

Page 20: TDD em 220V
Page 21: TDD em 220V

TESTES

TEST DRIVEN DEVELOPMENT

ISOLADOS

TESTES

TESTES

TESTES

* A execução de um teste não pode afetar outro teste.

Page 22: TDD em 220V

TESTES

TEST DRIVEN DEVELOPMENT

TESTES

TESTES

TESTES

LISTA

* Fazer uma lista com todos os testes que o desenvolvedor acredita que será necessário escrever.

Page 23: TDD em 220V

TEST DRIVEN DEVELOPMENT

FAÇA O TESTE

* Os testes devem ser escritos antes do código que será testado.

Page 24: TDD em 220V

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.

Page 25: TDD em 220V

POR QUE

TEST DRIVEN DEVELOPMENT

Page 26: TDD em 220V
Page 27: TDD em 220V

ONDE ESTÁ

TEST DRIVEN DEVELOPMENT

OBUG?

Page 28: TDD em 220V
Page 29: TDD em 220V

CORRIJA

RÁPIDO

TEST DRIVEN DEVELOPMENT

Page 30: TDD em 220V
Page 31: TDD em 220V

EN

TE

ND

A

TEST DRIVEN DEVELOPMENT

ME

LH

OR

Page 32: TDD em 220V

CICLO

TEST DRIVEN DEVELOPMENT

DEVIDA

Page 33: TDD em 220V

Adicionarum teste

Executaro teste

Modificar

Executaro teste

Ok

Erro Ok…

Page 34: TDD em 220V

Adiciona

Teste

Vejatestefalhar

EscrevaCódigo

Rode ostestes

Refatore

Page 35: TDD em 220V

E AGORA?

Page 36: TDD em 220V

REGRAS

TEST DRIVEN DEVELOPMENT

BOAS PRÁTICAS

TDD

Page 37: TDD em 220V
Page 38: TDD em 220V

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

Page 39: TDD em 220V

SHOW

ME

THE

CODE

JUnitFramework em JAVA

THE CODE IS THE DESIGN

Page 40: TDD em 220V

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.

Page 41: TDD em 220V

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

Page 42: TDD em 220V

KEEP

THE

BAR

GREEN

JUnitFramework em JAVA

Page 43: TDD em 220V

TEST DRIVEN DEVELOPMENT

Page 44: TDD em 220V

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.

Page 45: TDD em 220V

DICAS DE LEITURA

Page 46: TDD em 220V

Alexandre Werneck

@xanwerneck

[email protected]

TEST DRIVEN DEVELOPMENT

Page 47: TDD em 220V

Recommended