xNose: A Test Smell Detector for C#

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Paul, Partha P., Akanda, Md Tonoy, Ullah, M. Raihan, Mondal, Dipto, Chowdhury, Nazia S., Tawsif, Fazle M.
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866916238092926976
author Paul, Partha P.
Akanda, Md Tonoy
Ullah, M. Raihan
Mondal, Dipto
Chowdhury, Nazia S.
Tawsif, Fazle M.
author_facet Paul, Partha P.
Akanda, Md Tonoy
Ullah, M. Raihan
Mondal, Dipto
Chowdhury, Nazia S.
Tawsif, Fazle M.
contents Test smells, similar to code smells, can negatively impact both the test code and the production code being tested. Despite extensive research on test smells in languages like Java, Scala, and Python, automated tools for detecting test smells in C# are lacking. This paper aims to bridge this gap by extending the study of test smells to C#, and developing a tool (xNose) to identify test smells in this language and analyze their distribution across projects. We identified 16 test smells from prior studies that were language-independent and had equivalent features in C# and evaluated xNose, achieving a precision score of 96.97% and a recall score of 96.03%. In addition, we conducted an empirical study to determine the prevalence of test smells in xUnit-based C# projects. This analysis sheds light on the frequency and distribution of test smells, deepening our understanding of their impact on C# projects and test suites. The development of xNose and our analysis of test smells in C# code aim to assist developers in maintaining code quality by addressing potential issues early in the development process.
format Preprint
id arxiv_https___arxiv_org_abs_2405_04063
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle xNose: A Test Smell Detector for C#
Paul, Partha P.
Akanda, Md Tonoy
Ullah, M. Raihan
Mondal, Dipto
Chowdhury, Nazia S.
Tawsif, Fazle M.
Software Engineering
Test smells, similar to code smells, can negatively impact both the test code and the production code being tested. Despite extensive research on test smells in languages like Java, Scala, and Python, automated tools for detecting test smells in C# are lacking. This paper aims to bridge this gap by extending the study of test smells to C#, and developing a tool (xNose) to identify test smells in this language and analyze their distribution across projects. We identified 16 test smells from prior studies that were language-independent and had equivalent features in C# and evaluated xNose, achieving a precision score of 96.97% and a recall score of 96.03%. In addition, we conducted an empirical study to determine the prevalence of test smells in xUnit-based C# projects. This analysis sheds light on the frequency and distribution of test smells, deepening our understanding of their impact on C# projects and test suites. The development of xNose and our analysis of test smells in C# code aim to assist developers in maintaining code quality by addressing potential issues early in the development process.
title xNose: A Test Smell Detector for C#
topic Software Engineering
url https://arxiv.org/abs/2405.04063