Este documento apresenta os principais conceitos da área de qualidade de software, incluindo definições de processo de testes, técnicas de testes, verificação vs validação, tipos de testes, projeto de testes, cenários de testes, ferramentas de teste, ambientes de teste, testes de regressão e mais.
2. Agenda
Dia 1:
Quem sou EU e Quem são vocês.
História da Qualidade de Software. Como
tudo começou até os dias atuais.
Dia 2:
Principais conceitos na área
Dia 3:
Principais ferramentas da área e
Metodologias
Dia 4:
Mão na massa: cenários de testes e
gerência de bug.
Dia 5:
Mão na massa: testes automatizado de
interface web
Dia 6:
Qualidade web versus Qualidade mobile
Dia 7:
Atualizando o currículo/linkedin
Dia 8:
Simulação de entrevista
2
3. Conjunto de passos ao qual é possível alocar
técnicas e estratégias. Pode ser planejado e
realizado sistematicamente
*O processo de testes deve ser revisado continuamente de
maneira a ampliar sua atuação e assim dar uma maior visibilidade a
organização do seu trabalho
Processo de Testes
6. Verificação e Validação
Verificação: estamos construindo certo o
produto?
Ex.: Está igual a lista de requisitos
Validação: estamos construindo o produto
certo
Ex.: nosso produto serve para o usuário
7. Teste e Qualidade
Teste: é a ação. Uma fase. gera informação sobre a
qualidade do produto
Ex.: teste de unidade, teste de interface
Qualidade: é uma forma de pensar. É um conceito
mais amplo. Envolve produto, processo e pessoas.
Ex.: O produto possui muitos bugs em produção
8. Tipos de Testes
Unidade: verifica a menor unidade do projeto. Ex:
método, classe, variável.
#
Integração: verifica a estrutura do programa. A
arquitetura. A conexão entre as partes
#
Interface: verifica o sistema diante uma interface
#
9. Tipos de Testes
Segurança: verifica verifica se todos os mecanismos de
proteção ao sistema o protegerão (LGPD - lei de proteção
aos dados, virus, malware..).
#
Performance: existem três tipos
Carga: aumento gradativo da carga (5, 10, 15…)
Desempenho: capacidade da aplicação
Estresse: maior que o esperado
#
10. Projeto de testes
Todos os elementos que estarão envolvidos na
abordagem dos testes
Ex.: plano de testes, estratégia de testes, casos
de testes...
11. Plano de testes / Estratégia de Testes
Quem irá testar?
Quando?
Que ferramentas
iremos utilizar?
Qual o ambiente?
Onde ficarão os
cenários de testes?
Onde registra os
bugs?
Qual a forma de
registrar?
Que tipo de testes
faremos?
15. Evidência
Comprovação em formato de imagem, áudio
ou vídeo de alguma afirmação:
Ex.: os cenários de testes estão concluídos e
todos funcionando
Existe um bug nesta tela
18. Ambientes
1 - Desenvolvimento (ou local): ambiente mais
simples, suficiente para começar a programar.
2 - Homologação (UAT): ambiente de testes
semelhante ao ambiente real.
2.1 - Qualidade: ambiente onde os Tester
realizam as atividades de testes.
3 - Produção: ambiente real.
21. Processo de Desenvolvimento
Estratégia de fluxo durante o desenvolvimento
desde o início até a mão do usuário final e/ou
manutenção.
Tradicional: Cascata
Ágil: Scrum, Kanban, Lean..
22. Testes funcionais e não-funcionais
Funcionais: faz referência as funções
identificadas do sistema.
Ex.: Cadastrar usuário, Fazer login
Não- funcionais: não é uma função do sistema
mas, pode afetar o sistema.
Ex.: browsers, segurança, performance...
24. Cliente e Usuário Final
Cliente: quem paga as contas. Quem contratou
a equipe
Usuário Final: quem vai usar de fato o sistema
*Stakeholders: todos as pessoas envolvidas ou
atingidas pelo projeto.
25. Mais coisas..
Risco: fator que pode resultar em
consequências futuras negativas
Script de testes: sequência de instruções para
executar os testes. Um grupo de comandos
API: camada de aplicação do programa sem
interface gráfica e que funciona através de
requisições
26. Mais coisas...
Teste ágil: abordagem de testes adaptada ao modelo
Ágil
Testes tradicional: abordagem de testes adaptada ao
modelo tradicional
Cobertura de testes: quantidade de testes
Testes de aceitação: testa se o sistema será aceito
Testes exaustivos: bateria de testes que contém todas as
combinações de entradas e pré-condições
27. Mais coisas...
Análise estática: analisar itens que compõe o software
sem a sua real execução.
Analise dinâmica: analisar itens que compõe o software
após sua execução
Critérios de aceite: item ou lista de itens que o sistema
deve apresentar para ser considerado pronto