Ferramenta para Geração Automática de Testes Unitários a patir de Especificações Algébricas usando Alloy e SMT

No âmbito do projeto QUEST (http://gloss.di.fc.ul.pt/quest), a equipa da FEUP desenvolveu uma ferramenta (GenT) de geração automática de testes unitários em JUnit a partir de especificações formais de tipos abstratos de dados, envolvendo os seguintes passos: tradução da especificação formal para All...

Full description

Bibliographic Details
Main Author: Tiago Faria Campos
Other Authors: Faculdade de Engenharia
Format: Others
Language:Portuguese
Published: 2019
Subjects:
Online Access:https://repositorio-aberto.up.pt/handle/10216/76359
id ndltd-up.pt-oai-repositorio-aberto.up.pt-10216-76359
record_format oai_dc
spelling ndltd-up.pt-oai-repositorio-aberto.up.pt-10216-763592019-07-17T04:49:53Z Ferramenta para Geração Automática de Testes Unitários a patir de Especificações Algébricas usando Alloy e SMT Tiago Faria Campos Faculdade de Engenharia Ciências da engenharia e tecnologias Engineering and technology Ciências da engenharia e tecnologias Engineering and technology No âmbito do projeto QUEST (http://gloss.di.fc.ul.pt/quest), a equipa da FEUP desenvolveu uma ferramenta (GenT) de geração automática de testes unitários em JUnit a partir de especificações formais de tipos abstratos de dados, envolvendo os seguintes passos: tradução da especificação formal para Alloy; geração automática de objetivos de teste (condições a testar); utilização do Alloy Analyzer para encontrar modelos que satisfazem os objetivos de teste; conversão automática dos modelos encontrados para testes em JUnit e "mock objects" associados. A ferramenta desenvolvida precisa de ser continuada para melhorar a adequação dos testes gerados, nomeadamente: alguns dos objetivos de teste gerados (condições a testar) não são satisfazíveis; não gera testes fora do domínio (teste de excepções). O objetivo do presente trabalho é precisamente resolver as limitações atuais, bem como efetuar uma avaliação experimental que demonstre as vantagens em relação a outras abordagens existentes. Espera-se que a nova versão da ferramenta possa ser utilizada a nível académico no ensino de algoritmos e estruturas de dados e a nível industrial para melhorar o teste de implementações de tipos abstratos de dados. Under the QUEST (http://gloss.di.fc.ul.pt/quest) project, FEUP team developed a tool(Gent) of automatic generation of unit tests in JUnit from formal specifications of abstract data types, involving the following steps: translation of the formal specification for Alloy; automatic generation of test objectives (test conditions); use the Alloy Analyzer to find models which meet the test objectives; automatic conversion of the models found for JUnit tests and associated "mock objects".The tool developed needs to be continued to improve the adequacy of the generated tests, namely: some of the goals generated test (test conditions) are not satisfiable; does not generate tests outside the field test (exceptions).The objective of this work is precisely to solve the current limitations, as well as place an experimental evaluation to demonstrate the advantages over other existing approaches. It is expected that the new version of the tool can be used in academic teaching of algorithms and data structures and industrial level to improve the implementations of abstract data types test. 2019-01-31T20:02:43Z 2019-01-31T20:02:43Z 2014-07-17 2014-08-06 Dissertação sigarra:31871 https://repositorio-aberto.up.pt/handle/10216/76359 201321785 por openAccess https://creativecommons.org/licenses/by-nc/4.0/ application/pdf
collection NDLTD
language Portuguese
format Others
sources NDLTD
topic Ciências da engenharia e tecnologias
Engineering and technology
Ciências da engenharia e tecnologias
Engineering and technology
spellingShingle Ciências da engenharia e tecnologias
Engineering and technology
Ciências da engenharia e tecnologias
Engineering and technology
Tiago Faria Campos
Ferramenta para Geração Automática de Testes Unitários a patir de Especificações Algébricas usando Alloy e SMT
description No âmbito do projeto QUEST (http://gloss.di.fc.ul.pt/quest), a equipa da FEUP desenvolveu uma ferramenta (GenT) de geração automática de testes unitários em JUnit a partir de especificações formais de tipos abstratos de dados, envolvendo os seguintes passos: tradução da especificação formal para Alloy; geração automática de objetivos de teste (condições a testar); utilização do Alloy Analyzer para encontrar modelos que satisfazem os objetivos de teste; conversão automática dos modelos encontrados para testes em JUnit e "mock objects" associados. A ferramenta desenvolvida precisa de ser continuada para melhorar a adequação dos testes gerados, nomeadamente: alguns dos objetivos de teste gerados (condições a testar) não são satisfazíveis; não gera testes fora do domínio (teste de excepções). O objetivo do presente trabalho é precisamente resolver as limitações atuais, bem como efetuar uma avaliação experimental que demonstre as vantagens em relação a outras abordagens existentes. Espera-se que a nova versão da ferramenta possa ser utilizada a nível académico no ensino de algoritmos e estruturas de dados e a nível industrial para melhorar o teste de implementações de tipos abstratos de dados. === Under the QUEST (http://gloss.di.fc.ul.pt/quest) project, FEUP team developed a tool(Gent) of automatic generation of unit tests in JUnit from formal specifications of abstract data types, involving the following steps: translation of the formal specification for Alloy; automatic generation of test objectives (test conditions); use the Alloy Analyzer to find models which meet the test objectives; automatic conversion of the models found for JUnit tests and associated "mock objects".The tool developed needs to be continued to improve the adequacy of the generated tests, namely: some of the goals generated test (test conditions) are not satisfiable; does not generate tests outside the field test (exceptions).The objective of this work is precisely to solve the current limitations, as well as place an experimental evaluation to demonstrate the advantages over other existing approaches. It is expected that the new version of the tool can be used in academic teaching of algorithms and data structures and industrial level to improve the implementations of abstract data types test.
author2 Faculdade de Engenharia
author_facet Faculdade de Engenharia
Tiago Faria Campos
author Tiago Faria Campos
author_sort Tiago Faria Campos
title Ferramenta para Geração Automática de Testes Unitários a patir de Especificações Algébricas usando Alloy e SMT
title_short Ferramenta para Geração Automática de Testes Unitários a patir de Especificações Algébricas usando Alloy e SMT
title_full Ferramenta para Geração Automática de Testes Unitários a patir de Especificações Algébricas usando Alloy e SMT
title_fullStr Ferramenta para Geração Automática de Testes Unitários a patir de Especificações Algébricas usando Alloy e SMT
title_full_unstemmed Ferramenta para Geração Automática de Testes Unitários a patir de Especificações Algébricas usando Alloy e SMT
title_sort ferramenta para geração automática de testes unitários a patir de especificações algébricas usando alloy e smt
publishDate 2019
url https://repositorio-aberto.up.pt/handle/10216/76359
work_keys_str_mv AT tiagofariacampos ferramentaparageracaoautomaticadetestesunitariosapatirdeespecificacoesalgebricasusandoalloyesmt
_version_ 1719225603852337152