aula tecnicas teste luis renato

24
ecnicas de Teste de Software Luis Renato dos Santos FAES - UFPR 2011 Luis Renato dos Santos (FAES - UFPR) ecnicas de Teste de Software 2011 1 / 23

Upload: edboard-almeida

Post on 09-Nov-2015

10 views

Category:

Documents


0 download

DESCRIPTION

Testes de software TI

TRANSCRIPT

  • Tecnicas de Teste de Software

    Luis Renato dos Santos

    FAES - UFPR

    2011

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 1 / 23

  • Sumario

    Introducao

    Fundamentos de Teste de Software

    Teste Caixa Preta

    Teste Caixa Branca

    Teste Baseado em Erros

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 2 / 23

  • Introducao

    A atividade de Teste de Software e um elemento crtico da garantia dequalidade de sofware e representa a ultima revisao de especificacao,projeto e codificacao.

    E comum que o Teste de Software gaste 40% do esforco de criacao de umsoftware. Em sistemas crticos, pode chegar a custar de 3 a 5 vezes maisque todos os outros passos da Engenharia de Software.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 3 / 23

  • Fundamentos de Teste de Software

    Ao contrario de todas outras fases da Engenharia de Software, o Teste deSoftware tem por sua natureza ser destrutivo.

    Objetivos:

    - A atividade de Teste de Software e o processo de executar um programacom intencao de descobrir um erro.

    - Um teste bem sucedido e aquele que revela um erro ainda naodescoberto.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 4 / 23

  • Teste Caixa Preta

    A Tecnica Caixa Preta possui esse nome por considerar o produto em testecomo uma caixa da qual so se conhece a entrada e a sada ou seja,nenhum conhecimento de como o produto e internamente e utilizado.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 5 / 23

  • Teste Caixa Preta

    Criterios dessa tenica baseiam-se somente na especificacao de requisitospara derivar os casos de testes.

    O testador apresenta as entradas ao componente ou ao sistema e examinaas sadas correspondentes.

    Se as sadas nao sao aquelas previstas, entao o teste detectou comsucesso um problema com o software.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 6 / 23

  • Teste Caixa Preta

    Tecnicas de Teste Caixa Preta:

    - Particionamento de Equivalencia;

    - Analise do Valor Limite;

    - Teste de Comparacao;

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 7 / 23

  • Teste Caixa PretaParticionamento de Equivalencia

    O Particionamento de Equivalencia divide o domnio de entrada em umaserie de diferentes classes (ex: numeros positivos, strings sem brancos).

    Um caso de teste ideal descobre sozinho uma classe de erros.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 8 / 23

  • Teste Caixa PretaAnalise do Valor Limite

    A Analise de Valor Limite e uma tecnica que complementa oParticionamento de Equivalencia.

    Por razoes que nao sao completamente claras, um numero maior de errostende a ocorrer nas fronteiras do domnio de entrada do que no centro.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 9 / 23

  • Teste Caixa PretaTeste de Comparacao

    Em casos crticos ha elaboracao de software paralelamente. Os softwaressao testados com a mesma base de teste e em paralelo.

    Cada versao e testada com outra tecnica de teste de caixa preta. Sehouver diferenca entre os resultados das varias versoes, investiga-se.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 10 / 23

  • Teste Caixa PretaTeste de Comparacao

    Problema: todas versoes baseiam-se na mesma especificacao. Caso hajaerro de interpretacao, todas versoes podem ser afetadas.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 11 / 23

  • Teste Caixa Branca

    A tecnica de Teste de Caixa de Vidro trabalha diretamente sobre o codigofonte do software para avaliar aspectos tais como:- Teste de Fluxo de Controle;- Teste de Condicao;- Teste de Fluxo de Dados;- Teste de Ciclos e;

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 12 / 23

  • Teste Caixa Branca

    Esta tecnica apresenta-se como complementar ao Teste de Caixa Preta.

    Em geral, a maioria das tecnica utiliza uma representacao de programaconhecida como grafo de fluxo de controle ou grafo de programa.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 13 / 23

  • Teste Caixa Branca

    Um no representa uma ou mais instrucoes as quais sao sempre executadasem sequencia.

    Um arco, tambem chamado de ramo ou aresta, representa o fluxo decontrole entre blocos de comandos (nos).

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 14 / 23

  • Teste Caixa Branca

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 15 / 23

  • Teste Caixa Branca

    Os passos basicos para se aplicar um criterio de Teste Caixa Branca:- Analisa-se o codigo fonte da aplicacao;- Escolhe-se caminhos atraves da implementacao;- Valores de entradas sao selecionados de modo que os caminhosselecionados sejam executados;- As sadas esperadas para as entradas escolhidas sao determinadas;- Os casos de testes sao construdos;- As sadas obtidas sao comparadas com as sadas esperadas;- Um relatario e gerado para avaliar o resultado dos testes;

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 16 / 23

  • Teste Caixa BrancaFluxo de Controle

    Utilizam apenas caractersticas de controle da execucao do programa,como comandos ou desvios, para determinar quais estruturas saonecessarias.

    Criterios mais conhecidos:- Todos nos.- Todos arcos.- Todos caminhos.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 17 / 23

  • Teste Caixa BrancaTeste de Fluxo de Dados

    Utilizam informacoes do fluxo de dados do programa para determinar osrequisitos de teste.

    Esses criterios exploram as interacoes que envolvem definicoes de variaveise referencias a tais definicoes para estabelecerem os requisitos de teste.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 18 / 23

  • Teste Caixa BrancaTeste de Fluxo de Dados

    Criterios mais conhecidos:- Criterios de Rapps e Weyuker.- Criterios Potenciais-Usos.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 19 / 23

  • Teste Baseado em Erros

    A tecnica de teste baseada em defeitos utiliza informacoes sobre osenganos mais frequentes cometidos no processo de desenvolvimento desoftware.

    Algumas tecnicas operadas no Teste Baseado em Erros sao:

    - Semeadura de Defeitos;

    - Analise de Mutantes;

    - Mutacao de Interface;

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 20 / 23

  • Teste Baseado em ErrosAnalise de Mutantes

    Para a aplicacao do teste de mutacao existem duas hipoteses que ofundamentam:- A hipotese do programador competente;- O efeito de acoplamento;

    A ideia do teste de mutacao e criar a confianca de que um programa Pesta correto produzindo-se, por meio de pequenas alteracoes sintaticas.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 21 / 23

  • Teste Baseado em ErrosAnalise de Mutantes

    As mutacoes sao realizadas a partir de operadores de mutacao.

    Analise de Mutantes fornece uma medida objetiva do nvel de confiancaatraves da definicao de um escore de mutacao.

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 22 / 23

  • Teste Baseado em ErrosAnalise de Mutantes

    A aplicacao da Analise de Mutantes consiste em quatro etapas principais:- Geracao de mutantes;- Execucao de P com base em um dado conjunto de teste T;- Execucao dos mutantes com base em T e;- Analise dos mutantes sobreviventes;

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 23 / 23

  • Teste Baseado em ErrosAnalise de Mutantes

    O principal problema para a aplicacao de criterios baseados em mutacaoesta relacionado com o seu custo.- Grande numero de mutantes que podem ser gerados;- Determinar esforco;

    Luis Renato dos Santos (FAES - UFPR) Tecnicas de Teste de Software 2011 24 / 23