Loading…
Exploring the Connection between the TDD Practice and Test Smells—A Systematic Literature Review
Test-driven development (TDD) is an agile practice of writing test code before production code, following three stages: red, green, and refactor. In the red stage, the test code is written; in the green stage, the minimum code necessary to make the test pass is implemented, and in the refactor stage...
Saved in:
Published in: | Computers (Basel) 2024-03, Vol.13 (3), p.79 |
---|---|
Main Authors: | , , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
cited_by | |
---|---|
cites | cdi_FETCH-LOGICAL-c334t-d565467b21213e1dc35e8be07174a49296ca827217c072e98c528625567f2bff3 |
container_end_page | |
container_issue | 3 |
container_start_page | 79 |
container_title | Computers (Basel) |
container_volume | 13 |
creator | Marabesi, Matheus García-Holgado, Alicia García-Peñalvo, Francisco José |
description | Test-driven development (TDD) is an agile practice of writing test code before production code, following three stages: red, green, and refactor. In the red stage, the test code is written; in the green stage, the minimum code necessary to make the test pass is implemented, and in the refactor stage, improvements are made to the code. This practice is widespread across the industry, and various studies have been conducted to understand its benefits and impacts on the software development process. Despite its popularity, TDD studies often focus on the technical aspects of the practice, such as the external/internal quality of the code, productivity, test smells, and code comprehension, rather than the context in which it is practiced. In this paper, we present a systematic literature review using Scopus, Web of Science, and Google Scholar that focuses on the TDD practice and the influences that lead to the introduction of test smells/anti-patterns in the test code. The findings suggest that organizational structure influences the testing strategy. Additionally, there is a tendency to use test smells and TDD anti-patterns interchangeably, and test smells negatively impact code comprehension. Furthermore, TDD styles and the relationship between TDD practice and the generation of test smells are frequently overlooked in the literature. |
doi_str_mv | 10.3390/computers13030079 |
format | article |
fullrecord | <record><control><sourceid>proquest_doaj_</sourceid><recordid>TN_cdi_doaj_primary_oai_doaj_org_article_4824e477906f40dcb14ed4a8d83580bd</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><doaj_id>oai_doaj_org_article_4824e477906f40dcb14ed4a8d83580bd</doaj_id><sourcerecordid>2989723537</sourcerecordid><originalsourceid>FETCH-LOGICAL-c334t-d565467b21213e1dc35e8be07174a49296ca827217c072e98c528625567f2bff3</originalsourceid><addsrcrecordid>eNplUU1LAzEQXUTBUvsDvAU8V_O1m-RY2qqFgmIreAvZ7Gzdst3UZGvtzR_hL_SXGFsRwbnM8N7jzRsmSc4JvmRM4SvrVutNCz4QhhnGQh0lHYoF63NGno7_zKdJL4QljqUIk5R0knz8tq6dr5oFap8BDV3TgG0r16Ac2i1As4fnoxG69yYSFpBpCjSH0KLZCuo6fL5_DNBsF1pYmcijaRWTmHbjAT3AawXbs-SkNHWA3k_vJo_X4_nwtj-9u5kMB9O-ZYy3_SLNUp6JnBJKGJDCshRkDlgQwQ1XVGXWSCooERYLCkralMqMpmkmSpqXJesmk4Nv4cxSr321Mn6nnan0HnB-oY2PCWvQXFIOXAiFs5LjwuaEQ8GNLCRLJc6L6HVx8Fp797KJx-ql2_gmxtdUSSUoS5mIKnJQWe9C8FD-biVYf39G__sM-wKm5oNF</addsrcrecordid><sourcetype>Open Website</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2989723537</pqid></control><display><type>article</type><title>Exploring the Connection between the TDD Practice and Test Smells—A Systematic Literature Review</title><source>Publicly Available Content Database</source><creator>Marabesi, Matheus ; García-Holgado, Alicia ; García-Peñalvo, Francisco José</creator><creatorcontrib>Marabesi, Matheus ; García-Holgado, Alicia ; García-Peñalvo, Francisco José</creatorcontrib><description>Test-driven development (TDD) is an agile practice of writing test code before production code, following three stages: red, green, and refactor. In the red stage, the test code is written; in the green stage, the minimum code necessary to make the test pass is implemented, and in the refactor stage, improvements are made to the code. This practice is widespread across the industry, and various studies have been conducted to understand its benefits and impacts on the software development process. Despite its popularity, TDD studies often focus on the technical aspects of the practice, such as the external/internal quality of the code, productivity, test smells, and code comprehension, rather than the context in which it is practiced. In this paper, we present a systematic literature review using Scopus, Web of Science, and Google Scholar that focuses on the TDD practice and the influences that lead to the introduction of test smells/anti-patterns in the test code. The findings suggest that organizational structure influences the testing strategy. Additionally, there is a tendency to use test smells and TDD anti-patterns interchangeably, and test smells negatively impact code comprehension. Furthermore, TDD styles and the relationship between TDD practice and the generation of test smells are frequently overlooked in the literature.</description><identifier>ISSN: 2073-431X</identifier><identifier>EISSN: 2073-431X</identifier><identifier>DOI: 10.3390/computers13030079</identifier><language>eng</language><publisher>Basel: MDPI AG</publisher><subject>agile ; anti-patterns ; Critical path ; Investigations ; Literature reviews ; Organizational structure ; practitioners ; Productivity ; Software ; Software development ; Students ; Systematic review ; TDD ; test smells</subject><ispartof>Computers (Basel), 2024-03, Vol.13 (3), p.79</ispartof><rights>2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c334t-d565467b21213e1dc35e8be07174a49296ca827217c072e98c528625567f2bff3</cites><orcidid>0000-0001-9663-1103 ; 0000-0001-7646-554X ; 0000-0001-9987-5584</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktopdf>$$Uhttps://www.proquest.com/docview/2989723537/fulltextPDF?pq-origsite=primo$$EPDF$$P50$$Gproquest$$Hfree_for_read</linktopdf><linktohtml>$$Uhttps://www.proquest.com/docview/2989723537?pq-origsite=primo$$EHTML$$P50$$Gproquest$$Hfree_for_read</linktohtml><link.rule.ids>314,776,780,25731,27901,27902,36989,44566,75096</link.rule.ids></links><search><creatorcontrib>Marabesi, Matheus</creatorcontrib><creatorcontrib>García-Holgado, Alicia</creatorcontrib><creatorcontrib>García-Peñalvo, Francisco José</creatorcontrib><title>Exploring the Connection between the TDD Practice and Test Smells—A Systematic Literature Review</title><title>Computers (Basel)</title><description>Test-driven development (TDD) is an agile practice of writing test code before production code, following three stages: red, green, and refactor. In the red stage, the test code is written; in the green stage, the minimum code necessary to make the test pass is implemented, and in the refactor stage, improvements are made to the code. This practice is widespread across the industry, and various studies have been conducted to understand its benefits and impacts on the software development process. Despite its popularity, TDD studies often focus on the technical aspects of the practice, such as the external/internal quality of the code, productivity, test smells, and code comprehension, rather than the context in which it is practiced. In this paper, we present a systematic literature review using Scopus, Web of Science, and Google Scholar that focuses on the TDD practice and the influences that lead to the introduction of test smells/anti-patterns in the test code. The findings suggest that organizational structure influences the testing strategy. Additionally, there is a tendency to use test smells and TDD anti-patterns interchangeably, and test smells negatively impact code comprehension. Furthermore, TDD styles and the relationship between TDD practice and the generation of test smells are frequently overlooked in the literature.</description><subject>agile</subject><subject>anti-patterns</subject><subject>Critical path</subject><subject>Investigations</subject><subject>Literature reviews</subject><subject>Organizational structure</subject><subject>practitioners</subject><subject>Productivity</subject><subject>Software</subject><subject>Software development</subject><subject>Students</subject><subject>Systematic review</subject><subject>TDD</subject><subject>test smells</subject><issn>2073-431X</issn><issn>2073-431X</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2024</creationdate><recordtype>article</recordtype><sourceid>PIMPY</sourceid><sourceid>DOA</sourceid><recordid>eNplUU1LAzEQXUTBUvsDvAU8V_O1m-RY2qqFgmIreAvZ7Gzdst3UZGvtzR_hL_SXGFsRwbnM8N7jzRsmSc4JvmRM4SvrVutNCz4QhhnGQh0lHYoF63NGno7_zKdJL4QljqUIk5R0knz8tq6dr5oFap8BDV3TgG0r16Ac2i1As4fnoxG69yYSFpBpCjSH0KLZCuo6fL5_DNBsF1pYmcijaRWTmHbjAT3AawXbs-SkNHWA3k_vJo_X4_nwtj-9u5kMB9O-ZYy3_SLNUp6JnBJKGJDCshRkDlgQwQ1XVGXWSCooERYLCkralMqMpmkmSpqXJesmk4Nv4cxSr321Mn6nnan0HnB-oY2PCWvQXFIOXAiFs5LjwuaEQ8GNLCRLJc6L6HVx8Fp797KJx-ql2_gmxtdUSSUoS5mIKnJQWe9C8FD-biVYf39G__sM-wKm5oNF</recordid><startdate>20240301</startdate><enddate>20240301</enddate><creator>Marabesi, Matheus</creator><creator>García-Holgado, Alicia</creator><creator>García-Peñalvo, Francisco José</creator><general>MDPI AG</general><scope>AAYXX</scope><scope>CITATION</scope><scope>3V.</scope><scope>7SC</scope><scope>7XB</scope><scope>8AL</scope><scope>8FD</scope><scope>8FE</scope><scope>8FG</scope><scope>8FK</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>ARAPS</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>GNUQQ</scope><scope>HCIFZ</scope><scope>JQ2</scope><scope>K7-</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><scope>M0N</scope><scope>P5Z</scope><scope>P62</scope><scope>PHGZM</scope><scope>PHGZT</scope><scope>PIMPY</scope><scope>PKEHL</scope><scope>PQEST</scope><scope>PQGLB</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>Q9U</scope><scope>DOA</scope><orcidid>https://orcid.org/0000-0001-9663-1103</orcidid><orcidid>https://orcid.org/0000-0001-7646-554X</orcidid><orcidid>https://orcid.org/0000-0001-9987-5584</orcidid></search><sort><creationdate>20240301</creationdate><title>Exploring the Connection between the TDD Practice and Test Smells—A Systematic Literature Review</title><author>Marabesi, Matheus ; García-Holgado, Alicia ; García-Peñalvo, Francisco José</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c334t-d565467b21213e1dc35e8be07174a49296ca827217c072e98c528625567f2bff3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2024</creationdate><topic>agile</topic><topic>anti-patterns</topic><topic>Critical path</topic><topic>Investigations</topic><topic>Literature reviews</topic><topic>Organizational structure</topic><topic>practitioners</topic><topic>Productivity</topic><topic>Software</topic><topic>Software development</topic><topic>Students</topic><topic>Systematic review</topic><topic>TDD</topic><topic>test smells</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Marabesi, Matheus</creatorcontrib><creatorcontrib>García-Holgado, Alicia</creatorcontrib><creatorcontrib>García-Peñalvo, Francisco José</creatorcontrib><collection>CrossRef</collection><collection>ProQuest Central (Corporate)</collection><collection>Computer and Information Systems Abstracts</collection><collection>ProQuest Central (purchase pre-March 2016)</collection><collection>Computing Database (Alumni Edition)</collection><collection>Technology Research Database</collection><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>ProQuest Central (Alumni) (purchase pre-March 2016)</collection><collection>ProQuest Central (Alumni)</collection><collection>ProQuest Central UK/Ireland</collection><collection>Advanced Technologies & Aerospace Collection</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central</collection><collection>ProQuest Central Student</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Computer Science Collection</collection><collection>Computer Science Database</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><collection>Computing Database</collection><collection>ProQuest advanced technologies & aerospace journals</collection><collection>ProQuest Advanced Technologies & Aerospace Collection</collection><collection>ProQuest Central (New)</collection><collection>ProQuest One Academic (New)</collection><collection>Publicly Available Content Database</collection><collection>ProQuest One Academic Middle East (New)</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Applied & Life Sciences</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central Basic</collection><collection>DOAJ Directory of Open Access Journals</collection><jtitle>Computers (Basel)</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Marabesi, Matheus</au><au>García-Holgado, Alicia</au><au>García-Peñalvo, Francisco José</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Exploring the Connection between the TDD Practice and Test Smells—A Systematic Literature Review</atitle><jtitle>Computers (Basel)</jtitle><date>2024-03-01</date><risdate>2024</risdate><volume>13</volume><issue>3</issue><spage>79</spage><pages>79-</pages><issn>2073-431X</issn><eissn>2073-431X</eissn><abstract>Test-driven development (TDD) is an agile practice of writing test code before production code, following three stages: red, green, and refactor. In the red stage, the test code is written; in the green stage, the minimum code necessary to make the test pass is implemented, and in the refactor stage, improvements are made to the code. This practice is widespread across the industry, and various studies have been conducted to understand its benefits and impacts on the software development process. Despite its popularity, TDD studies often focus on the technical aspects of the practice, such as the external/internal quality of the code, productivity, test smells, and code comprehension, rather than the context in which it is practiced. In this paper, we present a systematic literature review using Scopus, Web of Science, and Google Scholar that focuses on the TDD practice and the influences that lead to the introduction of test smells/anti-patterns in the test code. The findings suggest that organizational structure influences the testing strategy. Additionally, there is a tendency to use test smells and TDD anti-patterns interchangeably, and test smells negatively impact code comprehension. Furthermore, TDD styles and the relationship between TDD practice and the generation of test smells are frequently overlooked in the literature.</abstract><cop>Basel</cop><pub>MDPI AG</pub><doi>10.3390/computers13030079</doi><orcidid>https://orcid.org/0000-0001-9663-1103</orcidid><orcidid>https://orcid.org/0000-0001-7646-554X</orcidid><orcidid>https://orcid.org/0000-0001-9987-5584</orcidid><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | ISSN: 2073-431X |
ispartof | Computers (Basel), 2024-03, Vol.13 (3), p.79 |
issn | 2073-431X 2073-431X |
language | eng |
recordid | cdi_doaj_primary_oai_doaj_org_article_4824e477906f40dcb14ed4a8d83580bd |
source | Publicly Available Content Database |
subjects | agile anti-patterns Critical path Investigations Literature reviews Organizational structure practitioners Productivity Software Software development Students Systematic review TDD test smells |
title | Exploring the Connection between the TDD Practice and Test Smells—A Systematic Literature Review |
url | http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-22T09%3A31%3A38IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_doaj_&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Exploring%20the%20Connection%20between%20the%20TDD%20Practice%20and%20Test%20Smells%E2%80%94A%20Systematic%20Literature%20Review&rft.jtitle=Computers%20(Basel)&rft.au=Marabesi,%20Matheus&rft.date=2024-03-01&rft.volume=13&rft.issue=3&rft.spage=79&rft.pages=79-&rft.issn=2073-431X&rft.eissn=2073-431X&rft_id=info:doi/10.3390/computers13030079&rft_dat=%3Cproquest_doaj_%3E2989723537%3C/proquest_doaj_%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-c334t-d565467b21213e1dc35e8be07174a49296ca827217c072e98c528625567f2bff3%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_pqid=2989723537&rft_id=info:pmid/&rfr_iscdi=true |