Introdução
A CONDADO tem por objetivo a geração de testes combinando controle e dados dos parâmetros de interações do protocolo e para isto utiliza três técnicas de caixa preta: teste de transição de estados, teste de sintaxe e teste de domínio.
Para possibilitar o método de geração de teste, uma linguagem para a especificação de protocolos foi descrita e chamada de Linguagem de Especificação de Protocolos (LEP) permitindo então que a CONDADO realize a transformação da especificação do protocolo em uma especificação de teste e em seguida gere os casos de teste utilizando as técnicas de caixa preta citadas anteriormente.
O método de geração de teste consiste no seguinte: primeiramente, definem-se os requisitos do protocolo representados por uma máquina de estados finita estendida expressa em LEP, que serve como entrada para o analisador. O analisador, por sua vez, monta a tabela de símbolos, o código intermediário da especificação e gera a matriz de transição contendo a parte de controle do protocolo. Com base na matriz de transição gerada pelo analisador, o verificador de propriedades analisa a especificação com o objetivo de definir quais as propriedades que esta possui. Tanto o analisador como o verificador de propriedades apenas oferecem serviços a CONDADO a qual baseada na tabela de símbolos, código intermediário e propriedades da especificação utiliza seus dois componentes principais para gerar os casos de teste. Os componentes principais da CONDADO consistem no seguinte:
Conversor
Este componente baseia-se na especificação em LEP, obtida através dos serviços do analisador, e na satisfação dos requisitos da especificação para transformar os dados e transições em uma especificação de teste cujo formato é baseado em Cláusulas de Horn, que são interpretadas em Prolog.
Gerador
De posse das Cláusulas de Horn fornecidas pelo Conversor e das restrições definidas pelo usuário, este componente utiliza um conjunto de técnicas de caixa preta implementadas em Prolog para gerar seqüências de teste as quais englobam controle e dados.
A CONDADO permite ainda testes completos ou seletivos, onde nos testes seletivos o usuário define propósitos de teste como por exemplo quais transições serão testadas ou quantas vezes serão executas. Além disso, o usuário pode utilizar as restrições para auxiliar na geração dos casos de teste onde, não havendo restrição, todos os casos de teste para as técnicas implementadas pela CONDADO serão geradas.
Linguagem de Especificação de Protocolos (LEP)
Com o objetivo de se obter uma notação única que pudesse representar tanto a parte de controle quanto a parte de dados de um protocolo de comunicação representado na forma de uma máquina de estado finita estendida foi desenvolvida a Linguagem para Especificação de Protocolos (LEP). A LEP é baseada na linguagem utilizada pela ferramenta TAG no que diz respeito à especificação da parte de controle, já para a parte de dados tomou-se como base a notação ASN.1 a qual é utilizada para descrição de estrutura de dados das interações dos protocolos.
Ilustração
Condado: entrada = máquina de estado clássica
Condado: saída = seqüência de casos de teste
Manuais
Manuais se encontram em formato .pdf podendo ser visualizado com o Adobe Reader:
• |
Manual da Ferramenta MME e Condado |
|
Autor: Anderson José Siqueira (Estagiario Fundep / Unip) |
|
Orientador: Ana Maria Ambrosio (DSS / INPE) |
|
Atualização: Setembro / 2005 |
|
Formato: pdf |
|
Tamanho: 2.090 kb |