Relatórios Técnicos do DCC/UFJF, 2018

Tamanho da fonte:  Menor  Médio  Maior

PySoCa: uma ferramenta para teste estrutural de programas escritos em Python

Jean Carlos Paiva Miranda, Vânia Neves

Resumo


Teste de software é uma atividade que visa identificar possíveis defeitos que podem vir a acarretar falhas nas aplicações possibilitando, dessa forma, um aumento na garantia da qualidade do Software sob Teste (SUT - do inglês, Software Under Test). Entre as técnicas de teste de software existentes está o teste estrutural que utiliza informações do código fonte para derivar requisitos de teste. Para isso, utiliza o Grafo de Fluxo de Controle (GFC) para representar o programa e suas unidades (funções, métodos, procedimentos). Nesse grafo, os nós podem representar simples comandos como atribuições de valores ou mesmo comandos mais complexos como estruturas condicionais e de repetição. As arestas representam uma transferência da execução de um nó para outro. A ideia é gerar dados de entrada que atinjam a maior parte possível dos nós e arestas do programa [1]. Na literatura, há algumas ferramentas para teste estrutural para linguagens como Java, C e C++ [2–4], mas não se encontrou nenhuma para programas escritos em Python. Considerando que essa é uma linguagem de programação bastante utilizada, inclusive em domínios como robótica em que alguns dos sistemas são críticos, este trabalho tem o objetivo de apresentar a ferramenta PySoCa (Python Source-code Coverage and Analysis) que visa automatizar o teste estrutural de software para programas escritos em Python.

Texto Completo: PDF