tópicos avançados em engenharia de software generating tests from counterexamples allynson...

Post on 16-Apr-2015

104 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Tópicos Avançados em Engenharia de Software

Generating Tests from Counterexamples

Allynson PraxedesLeonardo Nunes

Resumo

Software model Checker extendido do BLAST-Conjunto de Vetores de testes

-Localizações do programa(Predicado P verdadeiro)

Código morto

Model Checker

Execução do programa viola uma especificação do mesmo.

Caminho falhos ou Caminhos que violam a especificação

Executa até encontrar um Counterexample

Overview

Fase 1: Model checking

• Encontrar o vetor teste que leva o programa para a localização L5;

• m=z; assume (y<z); assume (x<y);• Os passos para a execução do programa

alcançar L5 no CFA Counterexemple

Fase 2: Tests from counterexamples

• Encontrar um vetor teste – valores associados a x, y e z – que alcance L5;

• trace formula (TF) – conjunção das restrições:– (m = z) ^ (y < z) ^ (x < y)– “x=0,y=1,z=2,m=2”

Continuação

• Repetir as duas fases até para cada localização• Até produzir um conjunto de vetores teste

para todas as localizações de CFA.

• Localizações não são alcansáveis: L13 e L15

Executando testes

• Construir o Test Driver para o programa dado;• Utilizando o BLAST’s testdriver generator;• Aceita como entrada os vetores de teste

gerados;• Executa os testes.

top related