O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Testes com xUnit------------------------------------------------------
Letticia Nicoli
Paula Santos
Letticia Nicoli
● Desenvolvedora na Lambda3
● letticia.nicoli@gmail.com
● @LetticiaNicoli
Quem somos
Paula Santos
● Desenv...
MAIS SÉRIO
DO QUE PARECE ...
Autodestruição ativada
O primeiro lançamento do foguete Ariane 5 falhou 37
segundos após sair do solo causando sua destrui...
Pareceu malware, mas não era
Em 2009, foi adicionada uma barra invertida em todas as URLs que eram
direcionadas para o bus...
➔ Tempo
➔ Planejamento
➔ Hábito
➔ Trabalhoso
➔ Conflito com a área de negócios
Por que deixamos os testes para depois/nunc...
➔ Retrabalho
➔ Virar a noite codando
➔ Alterar código antes da review
➔ Encontrar bug minutos antes do deploy
➔ Cobrir ape...
ENTÃO ….
COMECE A TESTAR
Tipos de Testes
➔ Funcional
Tem o objetivo de validar as
funcionalidades descritas na
documentação.
➔ Interface
Testa se o...
UNIDADE
INTEGRAÇÃO
UI
TESTES
MANUAIS
Testes Unitários
➔ Testar a menor unidade de
código possível, podendo ser
uma classe ou um método.
➔ Mostrar que cada unid...
Testes Unitários
➔ A implementação é de responsabilidade do
desenvolvedor, por se tratar de um teste com foco
direto no có...
Frameworks
Existem hoje no mercado vários frameworks de teste para a plataforma .NET.
Podemos citar alguns:
➔ MsTest: É a ...
Programação Orientada a Testes
TDD (Test-Driven Development)
➔ Escreva testes antes mesmo de escrever o código de
produção...
Como funciona?
➔ Escreva um teste que falha,
faça-o passar da maneira mais
simples possível e, por fim,
refatore o código....
O que eu ganho?
➔ Agilidade nos testes automatizados (mais rápido que testes manuais);
➔ Menor quantidade de bugs;
➔ Reduç...
CODING DOJO
DESENVOLVEDORES
REUNIDOS PARA RESOLVER
UM DESAFIO
NÃO É UMA COMPETIÇÃO !
EXPERIMENTAR e TESTAR
TODOS PARTICIPAM
Piloto e Co-Piloto
Todos podem participar
5 minutos
Randori Kata
PLATÉIA FICA EM SILÊNCIO
ENQUANTO ALGUM DOS TESTES
NÃO ESTIVER PASSANDO
RETROSPECTIVA
AVALIAÇÃO
PONTOS POSITIVOS E NEGATIVOS
Desafio
Ano Bissexto
Um ano é bissexto se ele for divisível por 400
ou se ele for divisível por 4 e não por 100.
Exemplos ...
Sugestões
tdd.caelum.com.br
Referências
➔ http://testesdesoftware.com/tipos-de-teste-de-software/
➔ http://bit.ly/TesteUnitarioTesteIntegrado
➔ http:/...
Obrigada !------------------------------------------------------
Letticia Nicoli
Paula Santos
Testes com xUnit + Coding Dojo
Terminou este documento.
Transfira e leia offline.
Próximos SlideShares
Entendendo Xamarin.Forms V2
Avançar
Próximos SlideShares
Entendendo Xamarin.Forms V2
Avançar
Transfira para ler offline e ver em ecrã inteiro.

Compartilhar

Testes com xUnit + Coding Dojo

Baixar para ler offline

Palestra realizada sobre a importância dos testes, testes unitários e TDD.

Testes com xUnit + Coding Dojo

  1. 1. Testes com xUnit------------------------------------------------------ Letticia Nicoli Paula Santos
  2. 2. Letticia Nicoli ● Desenvolvedora na Lambda3 ● letticia.nicoli@gmail.com ● @LetticiaNicoli Quem somos Paula Santos ● Desenvolvedora na Cubo Tecnologia ● paulacs21@hotmail.com ● https://www.linkedin.com/in/pcrissantos/
  3. 3. MAIS SÉRIO DO QUE PARECE ...
  4. 4. Autodestruição ativada O primeiro lançamento do foguete Ariane 5 falhou 37 segundos após sair do solo causando sua destruição. Motivo: mau funcionamento no software de controle. O valor de ponto flutuante era muito grande para ser representado por um inteiro de 16 bits. Fonte: en.wikipedia.org/wiki/Ariane_5
  5. 5. Pareceu malware, mas não era Em 2009, foi adicionada uma barra invertida em todas as URLs que eram direcionadas para o buscador da empresa. Resultado: o site foi sinalizado como malware no mundo todo por cerca de 1 hora Gerou prejuízo total de quase US$ 3 milhões
  6. 6. ➔ Tempo ➔ Planejamento ➔ Hábito ➔ Trabalhoso ➔ Conflito com a área de negócios Por que deixamos os testes para depois/nunca ?
  7. 7. ➔ Retrabalho ➔ Virar a noite codando ➔ Alterar código antes da review ➔ Encontrar bug minutos antes do deploy ➔ Cobrir apenas o happy path Impactos
  8. 8. ENTÃO …. COMECE A TESTAR
  9. 9. Tipos de Testes ➔ Funcional Tem o objetivo de validar as funcionalidades descritas na documentação. ➔ Interface Testa se objetos de tela e a navegabilidade funcionam conforme o especificado. ➔ Regressão Ocorre quando é feita alguma alteração na aplicação, por exemplo, uma nova funcionalidade. Neste caso a recomendação é executar todos os testes novamente. Existem diversos tipos de testes de software. Os mais comuns são:
  10. 10. UNIDADE INTEGRAÇÃO UI TESTES MANUAIS
  11. 11. Testes Unitários ➔ Testar a menor unidade de código possível, podendo ser uma classe ou um método. ➔ Mostrar que cada unidade atende corretamente sua especificação.
  12. 12. Testes Unitários ➔ A implementação é de responsabilidade do desenvolvedor, por se tratar de um teste com foco direto no código. ➔ Devem ser formulados para garantir que todos os pontos do fluxo a ser testado sejam verificados ao menos uma vez durante o teste.
  13. 13. Frameworks Existem hoje no mercado vários frameworks de teste para a plataforma .NET. Podemos citar alguns: ➔ MsTest: É a biblioteca de testes padrão do .NET integrada ao Visual Studio. ➔ NUnit: Projeto open source derivado do JUnit, que é um framework de testes para Java. ➔ xUnit.net: É biblioteca de testes também open source que surgiu como uma evolução do NUnit para testar linguagens da plataforma .NET (C#, VB.NET, F# e outras).
  14. 14. Programação Orientada a Testes TDD (Test-Driven Development) ➔ Escreva testes antes mesmo de escrever o código de produção ➔ Assegurar que boa parte do seu sistema tenha um teste que garanta o seu funcionamento
  15. 15. Como funciona? ➔ Escreva um teste que falha, faça-o passar da maneira mais simples possível e, por fim, refatore o código. ➔ Esse ciclo é conhecido como Ciclo Vermelho-Verde-Refatora.
  16. 16. O que eu ganho? ➔ Agilidade nos testes automatizados (mais rápido que testes manuais); ➔ Menor quantidade de bugs; ➔ Redução de custos com manutenção; ➔ Segurança ao desenvolvedor na hora de mudanças; ➔ Auxilia na documentação do sistema, pois o teste indica qual deve ser o comportamento esperado para a unidade a ser testada; ➔ Código de produção de qualidade; Se está difícil escrever um teste automatizado, é porque provavelmente o código de produção está complicado !
  17. 17. CODING DOJO
  18. 18. DESENVOLVEDORES REUNIDOS PARA RESOLVER UM DESAFIO
  19. 19. NÃO É UMA COMPETIÇÃO ! EXPERIMENTAR e TESTAR TODOS PARTICIPAM
  20. 20. Piloto e Co-Piloto Todos podem participar 5 minutos Randori Kata
  21. 21. PLATÉIA FICA EM SILÊNCIO ENQUANTO ALGUM DOS TESTES NÃO ESTIVER PASSANDO
  22. 22. RETROSPECTIVA AVALIAÇÃO PONTOS POSITIVOS E NEGATIVOS
  23. 23. Desafio Ano Bissexto Um ano é bissexto se ele for divisível por 400 ou se ele for divisível por 4 e não por 100. Exemplos de anos Bissexto: 1980, 1984, 1988, 1992, 1996 e 2000.
  24. 24. Sugestões tdd.caelum.com.br
  25. 25. Referências ➔ http://testesdesoftware.com/tipos-de-teste-de-software/ ➔ http://bit.ly/TesteUnitarioTesteIntegrado ➔ http://bit.ly/TestesUnitarios-xUnit ➔ http://bit.ly/TestesUnitarios ➔ http://www.codeatest.com/testes-unitarios-porque-escrever/
  26. 26. Obrigada !------------------------------------------------------ Letticia Nicoli Paula Santos
  • TalitaCypriano1

    Mar. 7, 2017

Palestra realizada sobre a importância dos testes, testes unitários e TDD.

Vistos

Vistos totais

650

No Slideshare

0

De incorporações

0

Número de incorporações

3

Ações

Baixados

6

Compartilhados

0

Comentários

0

Curtir

1

×