- -

Research on the detection of test smells and flaky tests

RiuNet: Repositorio Institucional de la Universidad Politécnica de Valencia

Compartir/Enviar a

Citas

Estadísticas

  • Estadisticas de Uso

Research on the detection of test smells and flaky tests

Mostrar el registro sencillo del ítem

Ficheros en el ítem

dc.contributor.advisor Albert Albiol, Manuela es_ES
dc.contributor.advisor Takada, Shingo es_ES
dc.contributor.author Vicent Micó, Alejandro es_ES
dc.date.accessioned 2023-10-23T09:13:36Z
dc.date.available 2023-10-23T09:13:36Z
dc.date.created 2023-09-22
dc.date.issued 2023-10-23 es_ES
dc.identifier.uri http://hdl.handle.net/10251/198550
dc.description.abstract [EN] This project is an empirical study that aims to research about test smells and flaky tests. Software testing is a key part of the development process of every project. During the implementation of test code, test smells arise, which are poor programming practices present in the test cases. Because of that, not only the effectiveness of the tests is affected, but also the maintenance and readability. In addition, some tests may have non-deterministic outcomes. These tests are called flaky and often lead to confusion and unreliable results . In this study, tools for the automated detection of test smells have been examined and used, which allow developers to find test smells in their projects in an efficient way. The tools were executed over a set of projects with flaky tests and the results were compared with the flaky results for analyzing the test methods with flaky behavior and test smells. The most common smells were found out and the relation between smells and flakiness was considered. The reached conclusion was that there is not enough evidence to support a strong correlation between test smells and flaky tests. However, some test smells might be related to other patterns that cause flaky results, such as asynchronous behaviors and connections to external resources. For easing the process of detecting and comparing test smells and flaky tests, an application was developed. As a result, the introduction of these practices is a bad habit that should be avoided, and some guidelines are provided in this regard. es_ES
dc.description.abstract [ES] Este proyecto es un estudio empírico que pretende investigar sobre los malos olores en pruebas y las pruebas inestables. Las pruebas de software son una parte fundamental del proceso de desarrollo de cualquier proyecto. Durante la implementación del código de prueba, surgen los malos olores, que son malas prácticas de programación presentes en los casos de prueba. Debido a ello, no sólo se ve afectada la eficacia de las pruebas, sino también su mantenimiento y legibilidad. Además, algunas pruebas pueden tener resultados no deterministas. Estas pruebas se denominan "inestables" y a menudo provocan confusión y resultados poco fiables. En este estudio se han examinado y utilizado herramientas para la detección automatizada de malos olores, que permiten a los desarrolladores encontrar estos olores en sus proyectos de forma eficiente. Las herramientas se ejecutaron sobre un conjunto de proyectos con pruebas inestables y los resultados se compararon con los resultados defectuosos para analizar los casos de prueba con comportamiento inestable y malos olores. Se descubrieron los olores más comunes y se consideró la relación entre olores e inestabilidad. La conclusión obtenida es que no hay pruebas suficientes que apoyen una fuerte correlación entre los malos olores en casos de prueba y las pruebas inestables. Sin embargo, algunos malos olores podrían estar relacionados con otros patrones que causan resultados inestables, como comportamientos asíncronos y conexiones a recursos externos. Para facilitar el proceso de detección y comparación de los "malos olores" y las "pruebas inestables", se ha desarrollado una aplicación. Como resultado, la introducción de estas prácticas es un mal hábito que debe evitarse, y se proporcionan algunas pautas en este aspecto. es_ES
dc.description.abstract [CA] Aquest projecte es un estudi empíric que preten investigar sobre les males olors en proves i les proves inestables. Las proves de software son una part fonamental del procés de desenvolupament de qualsevol projecte. Durant la implementació del códi de prova, sorgeixen les males olors, que son males pràctiques de programació presents en els casos de prova. Per aquesta raó, no sols es veu afectada l’eficàcia de les proves, sinó també el seu manteniment y legibilitat. Ademés, algunes proves poden tenir resultats no deterministes. Aquestes proves es denominen “inestables” i sovint provoquen confusió i resultats poc fiables. En aquest estudi s’han examinat i utilitzat ferramentes per a la detecció automatitzada de males olors, que permeten els desarrolladors trovar aquestes olors en els seus projectes de forma eficient. Les ferramentes es van executar sobre un conjunt de projectes amb proves inestables i els resultats es van comparar amb els resultats defectuosos per a analizar els casos de prova amb comportament inestable i males olors. Es van descobrir les olors més comunes i es considerà la relació entre olors i inestabilitat. La conclusión obtinguda es que no hi han proves suficiente que suporten una forta correlació entre males olors en casos de prova i proves inestables. No obstant, algunes males olors podrien estar relacionades amb altres patrons que provoquen resultats inestables, com comportaments asíncrons i conexions a recursos externs. Per a facilitar el procés de detecció i comparació de les “males olors” i les “proves inestables”, s’ha desarrollat una aplicació. Com a resultat, la introducción d’aquestes practiques es un mal hàbit que es deuria d’evitar, i es proporcionen algunes pautes en aquest aspecte. es_ES
dc.format.extent 110 es_ES
dc.language Inglés es_ES
dc.publisher Universitat Politècnica de València es_ES
dc.rights Reserva de todos los derechos es_ES
dc.subject Malos olores es_ES
dc.subject Pruebas inestables es_ES
dc.subject Pruebas de software es_ES
dc.subject Herramientas de detección es_ES
dc.subject Prácticas de programación es_ES
dc.subject Test smells es_ES
dc.subject Flaky tests es_ES
dc.subject Software testing es_ES
dc.subject Detection tools es_ES
dc.subject Programming practices es_ES
dc.subject.classification LENGUAJES Y SISTEMAS INFORMATICOS es_ES
dc.subject.other Máster Universitario en Ingeniería Informática-Màster Universitari en Enginyeria Informàtica es_ES
dc.title Research on the detection of test smells and flaky tests es_ES
dc.title.alternative Investigación en la detección de malos olores en pruebas y pruebas inestables es_ES
dc.title.alternative Investigació en la detecció de mals olors en proves i proves inestables es_ES
dc.type Tesis de máster es_ES
dc.rights.accessRights Abierto es_ES
dc.contributor.affiliation Universitat Politècnica de València. Departamento de Sistemas Informáticos y Computación - Departament de Sistemes Informàtics i Computació es_ES
dc.contributor.affiliation Universitat Politècnica de València. Escola Tècnica Superior d'Enginyeria Informàtica es_ES
dc.description.bibliographicCitation Vicent Micó, A. (2023). Research on the detection of test smells and flaky tests. Universitat Politècnica de València. http://hdl.handle.net/10251/198550 es_ES
dc.description.accrualMethod TFGM es_ES
dc.relation.pasarela TFGM\156263 es_ES


Este ítem aparece en la(s) siguiente(s) colección(ones)

Mostrar el registro sencillo del ítem