116
October 13, 2016 Web.br hugeinc.com

October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

  • Upload
    ngophuc

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

October 13, 2016Web.brhugeinc.com

Page 2: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Desenvolvendo aplicações de qualidade com TDD

Huge

13 de outubro, 2016

Page 3: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Isabella SilveiraWeb Engineer @ Huge.

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

Page 4: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 5: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 6: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 7: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 8: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 9: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 10: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 11: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 12: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Introdução.

Page 14: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

consumimos.

Page 15: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 16: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

E podemos dizer que o mundo moderno funciona a base

de código.

Page 17: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 18: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 19: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 20: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 21: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Qualidade de software é uma preocupação crescente.

Page 22: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 23: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

O que é TDD?

Page 24: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Vamos falar de coisa boa.

Page 25: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Testes de Software.

Page 26: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Tipos de teste de software.

O que é TDD?

Page 27: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Garantem o funcionamento de cada parte individual do sistema.

Page 30: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Asseguram que duas ou mais unidades funcionam corretamente

quando trabalhando juntas.

Page 32: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 34: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Integração

Unitários

Vista

Page 35: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 37: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 39: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Robert C. Martin (Uncle Bob)

Page 40: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 41: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 43: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Eric Elliott

Page 45: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

“ Mas como eu sei o que testar?”

Page 46: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

atômicas.

Page 47: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

logar no sistema.”

Page 48: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Form de login.

Definição de feature:

Page 49: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Definir as funcionalidades e o comportamento esperado dessa

feature.

Próximo passo:

Page 50: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 51: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 52: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Por que usar TDD?

Page 53: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

TDD te dá uma perspectiva mais clara do que realmente

é necessário.

Page 56: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 57: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

TDD reduz a complexidade do código.

Page 58: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Cada teste documenta com exatidão o comportamento de

cada função.

Page 60: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 62: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 64: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 65: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Testes previnem código quebrado.

Page 66: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 67: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Testes acabam com o medo de refactorings.

Page 68: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 69: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 70: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

TDD estimula designs modulares.

Page 71: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Show me the code.

Page 72: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Quatro perguntas primordiais.

Show me the code

Page 73: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Exemplo prático: logIntoSystem()

Page 75: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Red.

Page 76: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 77: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 78: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 79: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 80: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Green.

Page 81: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 82: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 83: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Refactor.

Page 84: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 85: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 86: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 87: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 88: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 89: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 90: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 91: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 92: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Boas práticas.

Page 93: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Cada teste deve ser independente.

Page 94: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 95: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Mocke os estados e recursos externos.

Page 96: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Use nomes e descrições consistentes.

Page 97: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Teste um comportamento de cada vez.

Page 98: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Ferramentas.

Page 99: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Frameworks de teste.

Ferramentas

Page 100: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 101: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Test runners.

Ferramentas

Page 102: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 103: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Próximos Passos.

Page 104: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Code Coverage.

Page 105: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Karma Coverage.

Page 106: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Integração Contínua.

Page 107: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella
Page 108: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Conclusão.

Page 109: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Qualidade agrega valor à sua aplicação.

Page 110: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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 hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

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

Page 112: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

E o mais importante de tudo:

Page 113: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Qualidade de

software não

é opcional.

Page 114: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Perguntas?

Page 115: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella

Get in touch./in/isabellasilveira

[email protected]

@silveira_bells

/bella-silveira

Page 116: October 13, 2016 Web.br hugeincceweb.br/webbr2016/apresentacoes/Isabella-Silveira.pdf · hugeinc.com. Desenvolvendo aplicações de qualidade com TDD Huge 13 de outubro, 2016. Isabella