Objetivos • Falar sobre testes funcionais de maneira generalista
• Pré-requisitos para a execução de testes funcionais
• Ganhos obtidos com Testes de Software
• Trocar experiências a partir dessa iniciativa
O que é Teste de Software “Avaliar um objeto de software em relação a sua
especificação” O que é Teste de Software “Atividade de executar um objeto de testes com o
intuito de encontrar falhas, onde falha é qualquer
tipo de comportamento não desejado no sistema”
Manual ou Automático? Manual ou Automático? Abordagens Caixa Branca – motivação de testar “caminhos”, estruturas de controle no código- fonte e verificar as saídas. . Abordagens Caixa Preta – motivação de testar uma combinação de entradas e verificar as respectivas saídas. Por que Teste Funcional? Testa os requisitos funcionais da aplicação e software. Resumidamente verificar se a aplicação está apta a realizar as funções na qual foi desenvolvida para fazer.
O teste funcional pode ser manual, realizado de
forma automatizada ou uma mistura dos dois. Técnicas de Testes Funcionais • Particionamento por Equivalência
• Análise de Valor Limite
• Tabelas de Decisão
• Transição de Estados
• Pair Wise (Combinação por Pares)
Técnicas de Testes Funcionais Particionamento de equivalência
Reduz um conjunto de entradas de grande (infinito) a um conjunto finito:
pequeno, mas eficiente. Divide o domínio de entrada de um software (ou programa) em classes de dados a partir das quais os casos de teste podem ser derivados. Classe de equivalência representa um conjunto de estados válidos ou inválidos para condições de entrada Duas ou mais classes são equivalentes, se elas produzem o mesmo resultado. Se uma situação funciona como o esperado, então podemos assumir que a outra também funciona. Devem conter entradas válidas e invalidas Técnicas de Testes Funcionais Particionamento de equivalência
Dividir todas as combinações possíveis em classes. Em um sistema de gestão de contratos,
a idade dos clientes varia de 18 a 120 anos. Técnicas de Testes Funcionais Análise de valor limite A Análise de Valor Limite (Boundary Value Analysis – BVA) é uma técnica de projeto de casos de teste que complementa o particionamento de equivalência; Em vez de selecionar qualquer elemento de uma classe de equivalência, a BVA leva à seleção de casos de teste nas “extremidades” da classe: Use um ou dois casos de testes para cada classe de equivalência; O melhor deles são os valores limites; Incorretas não-igualdades causam falhas apenas nos limites; Programas que falham com valores não-limites normalmente falham com valores limites também; Técnicas de Testes Funcionais Análise de valor limite Pré-requisitos para execução de Testes Funcionais Em se tratando de testes de Caixa Preta, a ESPECIFICAÇÃO FUNCIONAL do programa e o conhecimento dos domínios de ENTRADA (Inputs) e de SAÍDA (Outputs). Especificação Funcional Especificação Funcional... E se não há?? Ferramentas para realização de Teste Funcional Planilha de Elaboração de Casos de Testes Produtos do Teste Funcional Relatório de Evidências e Execução de Testes Ganhos com o Teste de Software • Reduzir os custos com retrabalho e melhorar a qualidade do software, atingindo um dos principais objetivos que normalmente a empresa busca para seu ambiente de desenvolvimento.
• A empresa conseguem diminuir as reclamações dos clientes
internos, e a qualidade do produto melhora consideravelmente de forma geral.
• Para ter um sistema de qualidade é preciso que desenvolvedor e
testador trabalhem juntos para conseguir o resultado esperado. Perguntas Obrigado