Reuso de código e de execução de test fixtures entre classes de teste
Autor(a) principal: | |
---|---|
Data de Publicação: | 2016 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFSC |
Texto Completo: | https://repositorio.ufsc.br/xmlui/handle/123456789/172334 |
Resumo: | Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2016. |
id |
UFSC_3515bae116de3a6b2bcced5370b18091 |
---|---|
oai_identifier_str |
oai:repositorio.ufsc.br:123456789/172334 |
network_acronym_str |
UFSC |
network_name_str |
Repositório Institucional da UFSC |
repository_id_str |
2373 |
spelling |
Reuso de código e de execução de test fixtures entre classes de testeComputaçãoSoftwareDesenvolvimentoTestesFramework (Arquivo de computador)Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2016.Teste de software consiste em uma atividade importante no processo de desenvolvimento e manutenção de software. A visão sobre sua utilidade tem evoluído nos últimos anos. Teste de software não é mais visto como uma atividade iniciada apenas ao final da etapa de codificação. Sua utilização passou a estar presente durante todo o processo de desenvolvimento e manutenção do software.Testes modelam cenários possíveis de uso do Sistema em Teste (System Under Test - SUT). Nesse sentido, é necessário que o teste coloque o SUT em um estado que represente o cenário que está sendo modelado, ou seja, em um estado de interesse para o teste. Esta tarefa é realizada através da configuração de test fixtures. Um test fixture representa qualquer elemento necessário para exercitar o SUT. A parte da lógica do teste em que os test fixtures são configurados é chamada de fixture setup. Promover o reuso de test fixtures é importante para criar testes com melhor manutenibilidade e, consequentemente, reduzir o esforço de desenvolvimento dos testes.Este trabalho propõe um conjunto de anotações que complementa o JUnit, para viabilizar tanto o reuso de código de test fixtures quanto o reuso de execução de test fixtures. A partir dessas anotações foi produzido o framework de teste Story. Experimentos mostram que através do Story foi possível atingir uma redução de 47,62% das linhas de código de teste e uma redução de 8 vezes no tempo de execução dos testes.<br>Abstract : Software Testing is an important activity of the software development process that has evolved in recent years. Software testing is no longer an activity that only starts after the coding phase. It is now carried out during the entire development process. In that sense, software testing incorporates other purposes, such as to identify failures, to prevent bug inclusion, to provide evidence that the software works, to give feedback about design and to be a way to specify and document the design.A test case simulates a use scenario of the System Under Test (SUT). In this sense, a test case has to put the SUT in a state that represents the modeled scenario, which is, a state of interest to the tests. This is done through the execution of test fixtures. A test fixture represents everything that is necessary to exercise the SUT. Promoting test fixture reuse is important in order to create tests with a better maintainability and, as consequence, to reduce the effort of the test development.This work proposes a set of annotations that complements JUnit in order to promote both the reuse of test fixture code and the reuse of test fixture execution. Through the annotations was implemented a new test framework called Story. Experiments show that Story achieved a reduction of 47,62% in the fixture setup code and approximately 8 times of execution time.Vilain, PatríciaUniversidade Federal de Santa CatarinaSilva, Lucas Pereira da2017-01-17T03:12:06Z2017-01-17T03:12:06Z2016info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis120 p.| il., grafs.application/pdf343060https://repositorio.ufsc.br/xmlui/handle/123456789/172334porreponame:Repositório Institucional da UFSCinstname:Universidade Federal de Santa Catarina (UFSC)instacron:UFSCinfo:eu-repo/semantics/openAccess2017-01-17T03:12:06Zoai:repositorio.ufsc.br:123456789/172334Repositório InstitucionalPUBhttp://150.162.242.35/oai/requestopendoar:23732017-01-17T03:12:06Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)false |
dc.title.none.fl_str_mv |
Reuso de código e de execução de test fixtures entre classes de teste |
title |
Reuso de código e de execução de test fixtures entre classes de teste |
spellingShingle |
Reuso de código e de execução de test fixtures entre classes de teste Silva, Lucas Pereira da Computação Software Desenvolvimento Testes Framework (Arquivo de computador) |
title_short |
Reuso de código e de execução de test fixtures entre classes de teste |
title_full |
Reuso de código e de execução de test fixtures entre classes de teste |
title_fullStr |
Reuso de código e de execução de test fixtures entre classes de teste |
title_full_unstemmed |
Reuso de código e de execução de test fixtures entre classes de teste |
title_sort |
Reuso de código e de execução de test fixtures entre classes de teste |
author |
Silva, Lucas Pereira da |
author_facet |
Silva, Lucas Pereira da |
author_role |
author |
dc.contributor.none.fl_str_mv |
Vilain, Patrícia Universidade Federal de Santa Catarina |
dc.contributor.author.fl_str_mv |
Silva, Lucas Pereira da |
dc.subject.por.fl_str_mv |
Computação Software Desenvolvimento Testes Framework (Arquivo de computador) |
topic |
Computação Software Desenvolvimento Testes Framework (Arquivo de computador) |
description |
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2016. |
publishDate |
2016 |
dc.date.none.fl_str_mv |
2016 2017-01-17T03:12:06Z 2017-01-17T03:12:06Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
343060 https://repositorio.ufsc.br/xmlui/handle/123456789/172334 |
identifier_str_mv |
343060 |
url |
https://repositorio.ufsc.br/xmlui/handle/123456789/172334 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
120 p.| il., grafs. application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFSC instname:Universidade Federal de Santa Catarina (UFSC) instacron:UFSC |
instname_str |
Universidade Federal de Santa Catarina (UFSC) |
instacron_str |
UFSC |
institution |
UFSC |
reponame_str |
Repositório Institucional da UFSC |
collection |
Repositório Institucional da UFSC |
repository.name.fl_str_mv |
Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC) |
repository.mail.fl_str_mv |
|
_version_ |
1808652322590425088 |