116
October 13, 2016 Web.br hugeinc.com

October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

October 13, 2016Web.brhugeinc.com

Page 2: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Desenvolvendo aplicações de qualidade com TDD

Huge

13 de outubro, 2016

Page 3: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Isabella SilveiraWeb Engineer @ Huge.

Front-End, Back-End, Agilee Integração Contínua.

Page 4: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 5: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 6: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 7: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 8: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 9: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 10: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 11: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 12: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

1. Introdução

2. O que é TDD? 3. Por que usar TDD?

4. Show me the code.

5. Boas práticas. 6. Ferramentas.

7. Próximos passos.

8. Conclusão.

Agenda.

Page 13: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Introdução.

Page 14: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Hoje em dia, a qualidade é um diferencial em tudo que

consumimos.

Page 15: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 16: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

E podemos dizer que o mundo moderno funciona a base

de código.

Page 17: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 18: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 19: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 20: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 21: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Qualidade de software é uma preocupação crescente.

Page 22: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

TDD é uma ótima ferramenta para nos ajudar a alcançar este objetivo.

Page 23: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

O que é TDD?

Page 24: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Vamos falar de coisa boa.

Page 25: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Testes de Software.

Page 26: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Tipos de teste de software.

O que é TDD?

Page 27: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Tipos de teste de software:

1. Testes unitários.

2. Testes de integração.

3. Testes de aceitação.

Page 28: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Tipos de teste de software:

1. Testes unitários.

2. Testes de integração.

3. Testes de aceitação.

Page 29: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Garantem o funcionamento de cada parte individual do sistema.

Page 30: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Tipos de teste de software.

1. Testes unitários.

2. Testes de integração.

3. Testes de aceitação.

Page 31: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Asseguram que duas ou mais unidades funcionam corretamente

quando trabalhando juntas.

Page 32: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Tipos de teste de software.

1. Testes unitários.

2. Testes de integração.

3. Testes de aceitação.

Page 33: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Testes na vista, simulam o comportamento do usuário.

Page 34: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Integração

Unitários

Vista

Page 35: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Metodologia de desenvolvimento de software onde os testes são escritos

antes das funcionalidades em si.

O que é TDD?

Page 36: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

As três leis do TDD.O que é TDD?

Page 37: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

As trêsleis do TDD:

Você deve escrever um

teste que falhe antes de escreverqualquer código de produção.

Page 38: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 39: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

"Getting software to work is only half of the job."

Robert C. Martin (Uncle Bob)

Page 40: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Primeiro fazer o código funcionar,depois melhorar a estrutura.

Page 41: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

As três leis do TDD:

Você não deve escrever um teste que contenha mais do que o

necessário para simular o comportamento da função.

Page 42: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Keep it simple: faça apenas o necessário no escopo da função.

Page 43: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

As três leis do TDD:

Você não deve escrever maiscódigo de produção do que o

suficiente para fazer o teste passar.

Page 44: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

“A failing test should read like a high-quality bug report.“

Eric Elliott

Page 45: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

“ Mas como eu sei o que testar?”

Page 46: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Divida a sua user story em features, e as features em unidades

atômicas.

Page 47: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

“Eu, enquanto usuário, gostaria de ser redirecionado para a home depois de

logar no sistema.”

Page 48: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Form de login.

Definição de feature:

Page 49: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Definir as funcionalidades e o comportamento esperado dessa

feature.

Próximo passo:

Page 50: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 51: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 52: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Por que usar TDD?

Page 53: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Por que usar TDD?

1. Auxilia no design da API.

2. Testes = Documentação.

3. Código de qualidade.

4. Viabiliza IC.

Page 54: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Por que usar TDD?

1. Auxilia no design da API.

2. Testes = Documentação.

3. Código de qualidade.

4. Viabiliza IC.

Page 55: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

TDD te dá uma perspectiva mais clara do que realmente

é necessário.

Page 56: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 57: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

TDD reduz a complexidade do código.

Page 58: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Por que usar TDD?

1. Auxilia no design da API.

2. Testes = Documentação.

3. Código de qualidade.

4. Viabiliza IC.

Page 59: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Cada teste documenta com exatidão o comportamento de

cada função.

Page 60: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Por que usar TDD?

1. Auxilia no design da API.

2. Testes = Documentação.

3. Código de qualidade.

4. Viabiliza IC.

Page 61: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Cada linha de código testado é uma linha de código confiável.

Page 62: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Por que usar TDD?

1. Auxilia no design da API.

2. Testes = Documentação.

3. Código de qualidade.

4. Viabiliza IC.

Page 63: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

A integração contínua fornece o panorama geral da aplicação.

Page 64: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 65: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Testes previnem código quebrado.

Page 66: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Testes mapeiam cada parte do comportamento da sua aplicação.

Page 67: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Testes acabam com o medo de refactorings.

Page 68: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 69: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

TDD facilita a identificação de bugs de regressão.

Page 70: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

TDD estimula designs modulares.

Page 71: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Show me the code.

Page 72: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Quatro perguntas primordiais.

Show me the code

Page 73: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Quatro perguntas primordiais.

1. O que eu estou testando?

2. Quais os parâmetros?

3. Qual a saída obtida?

4. Qual a saída esperada?

Page 74: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Exemplo prático: logIntoSystem()

Page 75: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Red.

Page 76: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 77: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 78: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 79: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 80: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Green.

Page 81: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 82: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 83: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Refactor.

Page 84: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 85: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 86: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 87: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Testar o comportamento em caso de falha também é importante.

Page 88: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 89: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 90: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 91: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 92: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Boas práticas.

Page 93: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Cada teste deve ser independente.

Page 94: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Não faça asserções desnecessárias.

Page 95: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Mocke os estados e recursos externos.

Page 96: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Use nomes e descrições consistentes.

Page 97: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Teste um comportamento de cada vez.

Page 98: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Ferramentas.

Page 99: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Frameworks de teste.

Ferramentas

Page 100: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 101: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Test runners.

Ferramentas

Page 102: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 103: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Próximos Passos.

Page 104: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Code Coverage.

Page 105: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Karma Coverage.

Page 106: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Integração Contínua.

Page 107: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas
Page 108: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Conclusão.

Page 109: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Qualidade agrega valor à sua aplicação.

Page 110: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

TDD não é a única forma de garantir a qualidade do software, apesar de ser

um bom aliado.

Page 111: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Sempre prezar por um códigomodularizado e testável.

Page 112: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

E o mais importante de tudo:

Page 113: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Qualidade de

software não

é opcional.

Page 114: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Perguntas?

Page 115: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas

Get in touch./in/isabellasilveira

[email protected]

@silveira_bells

/bella-silveira

Page 116: October 13, 2016 Web.br hugeinc › webbr2016 › apresentacoes › Isabella-Silveira.pdf · 1. Introdução 2. O que é TDD? 3. Por que usar TDD? 4. Show me the code. 5. Boas práticas