Test Driven Development: Abre alas

Preview:

Citation preview

TEST DRIVEN DEVELOPMENThttp://www.flickr.com/photos/lachlanhardy/2092147736/

por que testamos?

Como testamos?

MANUALMENTE

AUTOMATICAMENTE

Antes de TDDhttp://www.flickr.com/photos/flioukas/575773633/

1999

Código escrito

antes dos testes é

difícil de testar

Código escrito

antes dos testes é

difícil de usar

DESIGN

Design é uma atividade

e não um processo

TDD é um método para design de software, e não apenas testes

Testes verificam a

usabilidade do código

TDD é difícil

BDD

"I decided it must be possible to present TDD in a way that gets straight to the good stuff and avoids all the pitfalls.“

Dan North

http://dannorth.net/introducing-bdd

BDD é um guia de como

fazer TDD da maneira certa

As a [X]I want [Y]So that [Z]

Given [contexto]And [contexto adicional]When [evento]Then [verifique as saídas]

Anatomia de um teste

@Test

public void [descreva o contexto]{

Given [setup do contexto]

And [setup adicional]

When [o comportamento]

Then [verifique a saída]

}

@Test

public void deveRecuperarPrimeiroItem {

// Given, And..

Lista lista = new Lista();

lista.add(1).add(2).add(3);

// When

int primeiro = lista.primeiro();

// Then

assertEquals(1, primeiro);

}

Mão na massa!

Feedback

epílogo

todos os projetos nascem com

ambiente limpo

http://blog.objectmentor.com/articles/2009/01/09/the-big-redesign-in-the-sky

Desenvolvedores profissionais

escrevem testes. Simples assim.

http://blog.fragmental.com.br/2007/10/31/programadores-profissionais-escrevem-testes-ponto-final/

seja

curiosohttp://marcospereira.wordpress.com/2007/08/18/motor-curiosidade/

Você é o principal

responsável pela qualidade do seu

trabalho

http://www.artima.com/weblogs/viewpost.jsp?thread=71730

O time, a empresa, o ambiente

não melhoram se você não melhorar

primeiro

http://www.codeidol.com/other/extreme-programming/Applying-XP/Applying-XP/

Pense sobre

como você trabalha

http://gettingreal.37signals.com/toc.php

marcos silva pereirahttp://marcospereira.wordpress.com