teste baseado em modelos

12
Testes baseados em modelos Andreza Pollyana e Ana Karina

Upload: andreza-pollyana

Post on 14-Aug-2015

23 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Teste baseado em modelos

Testes baseados em modelos

Andreza Pollyana e Ana Karina

Page 2: Teste baseado em modelos

● aumento da complexidade dos sistemas.

● dificuldade da equipe de testes entender o sistema.

● Modelos ajudam a especificar e melhor entender as características e funcionamento do sistema.

● são econômicos.

Porque usar modelos?

Page 3: Teste baseado em modelos

Definição e características

● “Testes baseados em modelos é uma técnica de testes em que um modelo do sistema sendo testado, ou de parte dele, é construído e a partir dele é derivado um conjunto de casos de testes.”

● São considerados testes de caixa preta

● Em vez de escrevermos os testes manualmente baseados no documento de requisitos, criamos um modelo do comportamento esperado do sistema que captura os requisitos a serem testados, então ferramentas são utilizadas para gerar, automaticamente, testes a partir desse modelo

Page 4: Teste baseado em modelos

Vantagens

● A geração de testes começa mais cedo no ciclo do desenvolvimento● Evita ambiguidade que pode estar presente na documentação dos requisitos● Reduz o tempo dos testes ● Possibilita a construção de várias suites de testes a partir do mesmo modelo mudando apenas

o critério de testes.● Reduz custos● Não é necessário conhecimento em programação

Page 5: Teste baseado em modelos

O Processo

5 Etapas :1.Modelagem do sistema2.Geração de testes abstratos3.Concretização dos testes4.Execução dos testes 5.Análise de resultados

Page 6: Teste baseado em modelos

5.1 Modelagem do sistema

● Criação do modelo, que será chamado de modelo abstrato pois deve ser menor e mais simples que o próprio sistema

● Omitir detalhes do sistema● Conter as saídas esperadas● Usar ferramentas para verificar a sua consistência

Page 7: Teste baseado em modelos

Tipos de modelos

UML - diagrama de atividades

Máquina de estados para máquina de vender refrigerantes

Page 8: Teste baseado em modelos

5.2 Geração de testes abstratos

● Derivados do modelo● escolher o critério de seleção de testes que determina que testes deverão ser gerados a partir

do modelo.● Geração de um conjunto de testes abstratos que não são diretamente executáveis devido a

simplicidade do modelo● A maioria das ferramentas também gera uma matriz de rastreamento de requisitos e outros

relatórios de cobertura. o A matriz de rastreamento rastreia a ligação entre os requisitos funcionais e os testes

geradoso Os relatórios de cobertura indicam o quanto do modelo os testes gerados estão, de fato,

testando e podem ser utilizados.

Page 9: Teste baseado em modelos

5.3 Concretização dos testes

● Transformar os testes abstratos em testes executáveis,● Feito por uma ferramenta de transformação que utiliza vários templates e mapeamentos que

traduzem cada caso de testes abstratos em um script de testes executáveis ou escrevendo-se um código adaptador que realiza esta função.

● O objetivo desta fase é construir uma ligação entre os testes abstratos criados na fase anterior e o sistema sendo testado.

Page 10: Teste baseado em modelos

5.4 Execução dos testes

Os testes podem ser realizados, basicamente de duas maneiras:

● Online○ As ferramentas de testes se conectam diretamente ao sistema e ○ Testes são feitos dinamicamente, isto é, os testes são executados a medida em que são produzidos ○ A ferramenta de testes gerencia a execução e a gravação dos resultados

● Offline○ As ferramentas geram casos de testes que podem ser lidos pelo computador e executados automaticamente depois, o

que permite que eles sejam realizados por uma outra plataforma de testes.

Page 11: Teste baseado em modelos

5.5 Análise de resultados

● Analisar e realizar as correções se necessárias.● Para cada falha relatada deve-se determinar a sua causa, que pode se encontrar no sistema,

nos casos de testes aplicados, no modelo ou no adaptado

Page 12: Teste baseado em modelos

Exemplo de ferramenta - MaTeLo

● Realiza testes offlines e só funciona no windows● Adicionar bibliotecas de entrada (resultados das transações) e definir distribuições para essas entradas.● Adicionar bibliotecas de saída (verificação)● Simular ações de usuários (transições de estados)● Verificar se o resultado obtido é igual ao esperado. (pode-se usar funções para sistemas mais complexos)● Gerenciar requisitos (criando ou exportando) e

liga-los aos casos de testes gerados.● Criar perfies de Testes● Checar modelos● Verificar o caminho de um caso de teste● Escolher que tipo de algortimo será usado para

a geração de testes● Gerar os casos de testes