<?xml version="1.0" encoding="ISO-8859-1"?>
<metadatalist>
	<metadata ReferenceType="Thesis">
		<site>mtc-m21c.sid.inpe.br 806</site>
		<holdercode>{isadg {BR SPINPE} ibi 8JMKD3MGPCW/3DT298S}</holdercode>
		<identifier>8JMKD3MGP3W34R/42L2BFE</identifier>
		<repository>sid.inpe.br/mtc-m21c/2020/06.08.20.44</repository>
		<lastupdate>2021:01.19.14.20.52 urlib.net/www/2017/11.22.19.04 simone</lastupdate>
		<metadatarepository>sid.inpe.br/mtc-m21c/2020/06.08.20.44.11</metadatarepository>
		<metadatalastupdate>2022:04.03.23.15.36 sid.inpe.br/bibdigital@80/2006/04.07.15.50 administrator</metadatalastupdate>
		<secondarykey>INPE-18337-TDI/3009</secondarykey>
		<citationkey>RohdeEras:2021:MéGeAu</citationkey>
		<title>Singularity: um método para geração automática de casos de teste unitários baseado em contraexemplos de verificador de modelos para aplicações em C++</title>
		<alternatetitle>Singularity: a method for automatic generation of unit test cases based on model checker counterexamples of C++ applications</alternatetitle>
		<course>CAP-COMP-DIPGR-INPE-MCTI-GOV-BR</course>
		<year>2021</year>
		<date>2020-05-26</date>
		<thesistype>Dissertação (Mestrado em Computação Aplicada)</thesistype>
		<secondarytype>TDI</secondarytype>
		<numberofpages>97</numberofpages>
		<numberoffiles>1</numberoffiles>
		<size>2568 KiB</size>
		<author>Rohde Eras, Eduardo,</author>
		<committee>Andrade Neto, Pedro Ribeiro de (presidente),</committee>
		<committee>Santiago Júnior, Valdivino Alexandre de (orientador),</committee>
		<committee>Mattiello-Francisco, Maria de Fátima,</committee>
		<committee>Ferrari, Fabiano Cutigi,</committee>
		<e-mailaddress>eduardorohdeeras@gmail.com</e-mailaddress>
		<university>Instituto Nacional de Pesquisas Espaciais (INPE)</university>
		<city>São José dos Campos</city>
		<transferableflag>1</transferableflag>
		<keywords>casos de teste de software, teste unitário, verificador de modelo, automatização de teste, aplicações em C++, software testing cases, unit testing, model checking, test automation, C++ applications.</keywords>
		<abstract>Uma das tarefas mais desafiadoras na atividade de teste de software é a geração de casos/dados de teste. Embora haja uma quantidade significativa de estudos nesse sentido, ainda é necessário avançar em direção a abordagens que possam gerar casos/dados de teste com base apenas no código-fonte, considerando que muitos sistemas possuem apenas o código-fonte, sem a existência de uma documentação adequada. Esta Dissertação de Mestrado apresenta um novo método, denominado Singularity, para a geração de casos de teste unitários a partir de código-fonte em C++ e utilizando verificação de modelos, sendo este um método de Verificação Formal. Na presente abordagem, que é apoiada por uma ferramenta, o código-fonte C++ é traduzido automaticamente para modelos intermediários (Máquina de Estados Finitos, Grafo de Fluxo de Controle) e depois para a notação do Verificador de Modelos NuSMV. Posteriormente, uma técnica baseada no método HiMoST e em propriedades reconhecidas na literatura como "armadilha" produzem contraexemplos do verificador de modelos que são, de fato, os casos de teste abstratos em si. O método Singularity foi aplicado a um conjunto de códigos em C++ extraído de duas ferramentas complexas de sensoriamento remoto desenvolvidas no Instituto Nacional de Pesquisas Espaciais (INPE). Os resultados demonstraram a viabilidade do método para a geração de casos de teste. ABSTRACT: One of the most challenging tasks in software testing activity is the generation of test cases/data. Although there is a significant amount of studies in this direction, it is still necessary to move towards approaches that can generate test cases/data based only on the source code, since many systems have only the source code, without necessarily the existence of adequate documentation. This Master Dissertation presents a new method, called Singularity, for the generation of unit test cases/data from C++ source codes using Model Checking, a Formal Verification method. In the present approach, which is supported by a tool, the C++ source code is automatically translated into intermediate models (Finite State Machine, Control Flow Graph) and then into the NuSMV model checker notation. Subsequently, a technique based on the HiMoST method and the called "trap properties" produces counterexamples of the model checker which are, in fact, the test cases/data itself. The Singularity method was applied to a set of C++ codes extracted from two complex remote sensing tools developed at the National Institute for Space Research (INPE). The results demonstrated the viability of the method for generating test cases/data.</abstract>
		<area>COMP</area>
		<language>pt</language>
		<targetfile>publicacao_FA provisoria.pdf</targetfile>
		<usergroup>eduardorohdeeras@gmail.com</usergroup>
		<usergroup>pubtc@inpe.br</usergroup>
		<usergroup>simone</usergroup>
		<visibility>shown</visibility>
		<copyright>urlib.net/www/2012/11.12.15.10</copyright>
		<rightsholder>originalauthor yes</rightsholder>
		<readpermission>allow from all</readpermission>
		<documentstage>not transferred</documentstage>
		<mirrorrepository>urlib.net/www/2017/11.22.19.04.03</mirrorrepository>
		<nexthigherunit>8JMKD3MGPCW/3F2PHGS</nexthigherunit>
		<nexthigherunit>8JMKD3MGPCW/46KUES5</nexthigherunit>
		<hostcollection>urlib.net/www/2017/11.22.19.04</hostcollection>
		<username>pubtc</username>
		<agreement>agreement.html autorizacao.pdf .htaccess .htaccess2</agreement>
		<lasthostcollection>urlib.net/www/2017/11.22.19.04</lasthostcollection>
		<supervisor>Santiago Júnior, Valdivino Alexandre de,</supervisor>
		<url>http://mtc-m21c.sid.inpe.br/rep-/sid.inpe.br/mtc-m21c/2020/06.08.20.44</url>
	</metadata>
</metadatalist>