Use este identificador para citar o ir al link de este elemento:
http://hdl.handle.net/1843/ESBF-AE7MUP
Registro completo de metadatos
Campo DC | Valor | Idioma |
---|---|---|
dc.contributor.advisor1 | Mariza Andrade da Silva Bigonha | pt_BR |
dc.contributor.advisor-co1 | Fernando Magno Quintao Pereira | pt_BR |
dc.contributor.referee1 | Fernando Magno Quintao Pereira | pt_BR |
dc.contributor.referee2 | Humberto Torres Marques Neto | pt_BR |
dc.contributor.referee3 | Eduardo Magno Lages Figueiredo | pt_BR |
dc.creator | Francisco Demontiê dos Santos Junior | pt_BR |
dc.date.accessioned | 2019-08-14T02:46:35Z | - |
dc.date.available | 2019-08-14T02:46:35Z | - |
dc.date.issued | 2016-01-29 | pt_BR |
dc.identifier.uri | http://hdl.handle.net/1843/ESBF-AE7MUP | - |
dc.description.abstract | Software testing and debugging are hard tasks. In general, it is necessary that the execution flow reaches a function in order to test it. Much effort was employed in the development of techniques to automatically generate test cases to analyze functions of interest. However, such techniques have limitations. One which catches our attention is the fact that, from the best of our knowledge, no current technique relates arrays received by functions with their sizes. Thus, existing techniques may generate test cases which lead to invalid memory accesses that would not happen in a real execution of the program. We present two static analyses for inference of array sizes, as well as an algorithm for generation of test cases capable of generating safe tests by using such analyses. The analyses were able to bind sizes for 34.6% of the arrays received by functions of the SPEC CPU 2006 benchmark suite. We also show that our technique is useful for the automatic execution of interest functions. | pt_BR |
dc.description.resumo | Testar e depurar software são tarefas difíceis. Em geral, é preciso esperar que o fluxo de execução chegue a uma função de forma a poder testá-la. Nesse sentido, muito esforço foi empregado no desenvolvimento de técnicas, tais como execução simbólica e fuzz testing, para geração automática de casos de teste para analisar funções de interesse. Entretanto, tais técnicas possuem limitações. Uma limitação que chama a nossa atenção é o fato de que, até onde sabemos, nenhuma técnica atual relaciona arranjos passados como entradas para funções com outras entradas que representem seus tamanhos. Isso faz com que os casos de teste gerados, em algumas situações, possam levar a acessos inválidos à memória que não aconteceriam em execuções reais do programa sendo testado. Nessa dissertação, apresentamos duas análises estáticas para inferência de tamanhos de arranjos, bem como um algoritmo para geração de casos de teste capaz de gerar testes seguros usando tais análises. Como forma de avaliar a efetividade da nossa técnica, realizamos dois experimentos.No primeiro deles, as análises estáticas foram capazes de relacionar X% dos tamanhos de arranjos recebidos como parâmetro por funções dos programas contidos no SPEC CPU 2006 (um conjunto de benchmarks contendo programas reais). No segundo, nós melhoraramos a efetividade da ferramenta Asymptus, que realiza análise automática de complexidade de funções e foi desenvolvida como um estudo preliminar deste mestrado. Utilizando a nossa abordagem de geração de entradas, Asymptus foi capaz de analisar Y% das funções contidas nos benchmarks do Rodinia, contra Z% sem o uso da abordagem. Isso mostra que nossa técnica de geração de entradas é útil para a execução automática de funções de interesse. | pt_BR |
dc.language | Inglês | pt_BR |
dc.publisher | Universidade Federal de Minas Gerais | pt_BR |
dc.publisher.initials | UFMG | pt_BR |
dc.rights | Acesso Aberto | pt_BR |
dc.subject | Geração de casos de teste | pt_BR |
dc.subject | Compiladores | pt_BR |
dc.subject | Análise de fluxo de dados | pt_BR |
dc.subject | Tamanhos de Arranjos | pt_BR |
dc.subject | Análise estática | pt_BR |
dc.subject.other | Diagrama de fluxo de dados | pt_BR |
dc.subject.other | Computação | pt_BR |
dc.subject.other | Software Validação | pt_BR |
dc.subject.other | Compiladores (Programas de computador) | pt_BR |
dc.title | Geração de casos de teste para linguagens com aritimética de ponteiro | pt_BR |
dc.type | Dissertação de Mestrado | pt_BR |
Aparece en las colecciones: | Dissertações de Mestrado |
archivos asociados a este elemento:
archivo | Descripción | Tamaño | Formato | |
---|---|---|---|---|
franciscodemonti_.pdf | 1.82 MB | Adobe PDF | Visualizar/Abrir |
Los elementos en el repositorio están protegidos por copyright, con todos los derechos reservados, salvo cuando es indicado lo contrario.