2. Ricardo Moura
Há 7 anos, inimigo número 1 dos desenvolvedores
Aspirante a desenvolvedor
Desde 2014 na equipe de QA da Tecban.
Certificado pelo BSTQB nos níveis Foundation e Agile Tester
Amante dos carros velhos e rápidos
“Aquele cara chato”
“Por que comprar se eu posso fazer gastando o dobro?”
10. Unidade: “Menor parte testável
de um programa de
computador”
“Soma(a,b)”
Teste
Unitário:
“Aplicação de teste
que consiste em
validar as entradas e
saídas de uma
unidade de código”
16. • Forma de Diminuir a Alta Taxa de Defeitos
• Essencial no desenvolvimento de software e entrega de código legível, que se mantém
com facilidade por qualquer membro da equipe.
• Auxilia o desenvolvedor a escrever um código para que outras pessoas da equipe entenda.
• O Aumento das Validações de todas as funções do sistema.
• Diminui a probabilidade de erros futuros.
• Permitem a simplificação dos códigos, fazendo com que elementos desnecessários fiquem
de fora e não resultem no mau funcionamento do sistema
Motivações
20. • Escreva o teste primeiro(TDD)
• Nunca inicie com um teste que será bem sucedido
• Comece com valores nulos, ou algo que não funcione
• Não fique com medo de fazer algo trivial para fazer o teste funcionar
• Desacoplamento e testabilidade andam de mãos dadas
• Faça apenas 1 ação e 1 verificação por teste
• Divida o seu teste em 3 partes, Preparação, Ação e Verificação (em inglês:
Arrange, Act and Assert)
Best Practices
25. “Objetivo de uma avaliação de cobertura de código é
informar lacunas em sua estratégia de testes unitários”
Facilita o encontro de módulos, classes e funções
que são testados de modo insuficiente como por
exemplo IF e catch parcialmente cobertos.
A maioria das IDEs lhe dão uma indicação visual:
Verde: Linhas que são cobertas pelos testes.
Vermelho: Linhas que não são cobertas pelos testes.
Amarelo: Branchs que não foram cobertos completamente
30. Feedback imediato e constante
100% de cobertura de teste unitário
Somente o necessário é desenvolvido
Aplicação mais legível e simples
Documentação viva
Controle do progresso do desenvolvimento
Desenvolvimento fragmentado.