Você está na página 1de 54

Universidade Federal de Mato Grosso do Sul

Faculdade de Computação
Curso de Teste de Software

Técnica de Teste Estrutural


Baseado em Fluxo de Controle

Prof. Dr. Rodrigo Funabashi Jorge


funabashi@facom.ufms.br

Material adaptado de http://napsol.icmc.usp.br/ats


Definições
Técnica de Aplicação - Processo

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Critérios

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Uso nas Fases do Teste

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Uso nas Fases do Teste

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Uso nas Fases do Teste

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Vantagens

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Desvantagens

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Definição

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Exemplo - Problema

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
O que é o Grafo de Fluxo de Controle

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Elementos de um GFC

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Programa Exemplo (1)

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Programa Exemplo (2) - Bolha

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
NÍVEIS DE COBERTURA

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Níveis de Cobertura

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Conceito de Caminho Básico

COMPLEXIDADE CICLOMÁTICA

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Métricas
• A Complexidade Ciclomática é uma das métricas
mais amplamente utilizadas em se tratando de
métricas estáticas
– A complexidade ciclomática de um módulo de software é
calculada a partir de um gráfico conectado do módulo:

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Benefícios da Métrica de Complexidade

• Estudos mostram uma correlação entre a


complexidade Ciclomática de um programa e
sua frequência de erro
• Uma baixa complexidade Ciclomática
contribui para a facilidade de compreensão de
um programa
• Indica que este é acessível a modificações com
risco menor que um programa mais complexo

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Benefícios da Métrica de Complexidade

• A complexidade Ciclomática de um módulo


também é um forte indicador de sua
facilidade de teste

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Definições Importantes

• Um caminho independente é um caminho no


grafo de fluxo que inclui pelo menos uma aresta
nova (que não tenha sido ainda “atravessada”)

• Conjunto básico é o conjunto formado pelos


caminhos independentes que cubram todas as
arestas do grafo de fluxo

• Diferentes conjuntos de caminhos básicos podem


ser derivados para um dado procedimento.

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Passos para Aplicação
• Construir o GFC para o módulo do produto em
teste.
• Calcular a Complexidade Ciclomática (C).
• Selecionar um conjunto de C caminhos
básicos.
• Criar um caso de teste para cada caminho
básico.
• Executar os casos de testes.
Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Formas de Calculo da Complexidade
Ciclomática

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Calculando....

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Criar o Conjunto de Caminhos Básicos

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Criar o Conjunto de Caminhos Básicos

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Criar o Conjunto de Caminhos Básicos

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Criar o Conjunto de Caminhos Básicos

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Criar o Conjunto de Caminhos Básicos

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Criar o Conjunto de Caminhos Básicos

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Criar o Conjunto de Caminhos Básicos

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Conjunto de Caminhos Básicos

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Métrica de Complexidade - exemplo

Qual a Complexidade Ciclomática?


Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Métrica de Complexidade - exemplo

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Métrica de Complexidade - exemplo

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Métrica de Complexidade - exemplo

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Concluindo...
• O teste do caminho básico
– É um critério de teste de caixa branca que possibilita
que o projetista do caso de teste derive uma medida
de complexidade lógica de um projeto procedimental
e use essa medida como guia para definir um
conjunto básico de caminhos de execução

• Estes casos de teste


– Garantem a execução de cada instrução do programa (cada
aresta - consequentemente cada nó - do GFC) pelo menos
uma vez

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge
Universidade Federal de Mato Grosso do Sul
Faculdade de Computação
Curso de Teste de Software

Questionamentos!?

Faculdade de Computação - FACOM Teste de Software Prof. Dr. Rodrigo Funabashi Jorge

Você também pode gostar