Please use this identifier to cite or link to this item: https://hdl.handle.net/10316/86360
DC FieldValueLanguage
dc.contributor.advisorBarbosa, Raul André Brajczewski-
dc.contributor.authorConceição, Tomás Morgado de Carvalho-
dc.date.accessioned2019-04-17T22:14:02Z-
dc.date.available2019-04-17T22:14:02Z-
dc.date.issued2019-02-01-
dc.date.submitted2019-04-17-
dc.identifier.urihttps://hdl.handle.net/10316/86360-
dc.descriptionDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia-
dc.description.abstractOs smart contracts são programas de computador que usam a tecnologia blockchain para permitir que os seus utilizadores troquem bens digitais sem a necessidade de um intermediário. NEO é uma recente plataforma de blockchain que oferece aos programadores a possibilidade de desenvolver smart contracts em linguagens de programação de alto nível. Devido às propriedades da blockchain, o código dos smart contracts não pode ser alterado após ser distribuido na blockchain. É portanto crucial que os programadores testem cuidadosamente os seus smart contracts antes de os usarem em ambiente de produção.Esta dissertação, o produto do estágio do seu autor na Whitesmith, apresenta as diferentes fases do desenvolvimento de uma ferramenta de testes para smart contracts de NEO.Esta ferramenta tenta colmatar a distância entre o estado da arte das ferramentas de desenvolvimento de NEO e de Ethereum, duas tecnologias de blockchain promissoras, apresentadas neste relatório. O estudo do estado da arte das ferramentas de desenvolvimento para estas tecnologias mostra que, apesar de NEO ter ferramentas de desenvolvimentos tais como o NeoCompiler Eco que assistem no desenvolvimento de smart contracts, estas não oferecem quaisquer funcionalidades de teste.Tomando partido de uma ferramenta já existente para NEO, o NeoCompiler Eco, foi desenvolvida uma ferramenta de automação de testes que permite aos seus utilizadores criar, importar, guardar e correr casos de teste e suites de teste numa rede privada de NEO, utilizando apenas um browser.Esta ferramenta, que avalia os casos de teste consoante eventos ouvidos na blockchain de NEO, é o resultado dos requisitos feitos ao estagiário pelos programadores da Blocksmith, uma startup spin-off da Whitesmith, e é agora usada por estes programadores.por
dc.description.abstractSmart contracts are computer programs which use blockchain technology to allow users to exchange digital assets without the need for a middle-man. NEO is a recent blockchain platform, which presents programmers with the possibility of developing smart contracts in high-level programming languages. Due to blockchain properties, smart contract code cannot be changed after being deployed. It is then crucial for developers to thoroughly test their smart contracts before using them in a production environment. This dissertation, a product of the intern’s internship at Whitesmith, presents the different phases of the development of a testing tool for NEO smart contracts. This tool attempts to fill the gap between the state of the art of NEO and Ethereum developer tools, two promising blockchain technologies which are presented in this report. The study of the state of the art of development tools for these technologies shows that, although NEO has development tools, such as NeoCompiler Eco, which assists in the development of smart contracts, these do not offer any testing features. Taking advantage of the existing NEO tool NeoCompilerEco, a test automation tool was developed, which enables users to create, import, save and run test cases and test suites on a NEO private network, using only a browser. This tool, which assesses tests according to events listened in the NEO blockchain, is the result of the requests made to the intern by developers at Blocksmith, a spin-off startup from Whitesmith, and is now in use by these developers.eng
dc.language.isoeng-
dc.rightsopenAccess-
dc.rights.urihttp://creativecommons.org/licenses/by-sa/4.0/-
dc.subjectAutomaçãopor
dc.subjectBlockchainpor
dc.subjectNEOpor
dc.subjectSmart Contractspor
dc.subjectTestepor
dc.subjectAutomationeng
dc.subjectBlockchaineng
dc.subjectNEOeng
dc.subjectSmart Contractseng
dc.subjectTestingeng
dc.titleValidation of Smart Contracts through Automated Toolingeng
dc.title.alternativeValidação de Smart Contracts Através de Ferramentas Automatizadaspor
dc.typemasterThesis-
degois.publication.locationWhitesmith, Lda.-
degois.publication.titleValidation of Smart Contracts through Automated Toolingeng
dc.peerreviewedyes-
dc.identifier.tid202223140-
thesis.degree.disciplineInformática-
thesis.degree.grantorUniversidade de Coimbra-
thesis.degree.level1-
thesis.degree.nameMestrado em Engenharia Informática-
uc.degree.grantorUnitFaculdade de Ciências e Tecnologia - Departamento de Engenharia Informática-
uc.degree.grantorID0500-
uc.contributor.authorConceição, Tomás Morgado de Carvalho::0000-0002-7163-7506-
uc.degree.classification17-
uc.degree.presidentejuriTeixeira, César Alexandre Domingues-
uc.degree.elementojuriSilva, Fernando José Barros Rodrigues da-
uc.degree.elementojuriBarbosa, Raul André Brajczewski-
uc.contributor.advisorBarbosa, Raul André Brajczewski-
item.openairetypemasterThesis-
item.fulltextCom Texto completo-
item.languageiso639-1en-
item.grantfulltextopen-
item.cerifentitytypePublications-
item.openairecristypehttp://purl.org/coar/resource_type/c_18cf-
Appears in Collections:UC - Dissertações de Mestrado
Files in This Item:
Show simple item record

Page view(s) 50

422
checked on Jul 16, 2024

Download(s) 50

1,200
checked on Jul 16, 2024

Google ScholarTM

Check


This item is licensed under a Creative Commons License Creative Commons