Manual Tests Do Smell! Cataloging and Identifying Natural Language Test Smells

08/02/2023
by   Elvys Soares, et al.
0

Background: Test smells indicate potential problems in the design and implementation of automated software tests that may negatively impact test code maintainability, coverage, and reliability. When poorly described, manual tests written in natural language may suffer from related problems, which enable their analysis from the point of view of test smells. Despite the possible prejudice to manually tested software products, little is known about test smells in manual tests, which results in many open questions regarding their types, frequency, and harm to tests written in natural language. Aims: Therefore, this study aims to contribute to a catalog of test smells for manual tests. Method: We perform a two-fold empirical strategy. First, an exploratory study in manual tests of three systems: the Ubuntu Operational System, the Brazilian Electronic Voting Machine, and the User Interface of a large smartphone manufacturer. We use our findings to propose a catalog of eight test smells and identification rules based on syntactical and morphological text analysis, validating our catalog with 24 in-company test engineers. Second, using our proposals, we create a tool based on Natural Language Processing (NLP) to analyze the subject systems' tests, validating the results. Results: We observed the occurrence of eight test smells. A survey of 24 in-company test professionals showed that 80.7 examples. Our NLP-based tool achieved a precision of 92 f-measure of 93.5 cataloged test smells in the analyzed systems. Conclusion: We contribute with a catalog of natural language test smells and novel detection strategies that better explore the capabilities of current NLP mechanisms with promising results and reduced effort to analyze tests written in different idioms.

READ FULL TEXT

page 1

page 7

page 9

research
07/12/2022

Refactoring Assertion Roulette and Duplicate Assert test smells: a controlled experiment

Test smells can reduce the developers' ability to interact with the test...
research
06/30/2017

Racial Disparity in Natural Language Processing: A Case Study of Social Media African-American English

We highlight an important frontier in algorithmic fairness: disparity in...
research
08/16/2021

Systematic Generation of Conformance Tests for JavaScript

JavaScript implementations are tested for conformance to the ECMAScript ...
research
05/07/2023

No More Manual Tests? Evaluating and Improving ChatGPT for Unit Test Generation

Unit testing is essential in detecting bugs in functionally-discrete pro...
research
10/26/2015

Object Oriented Analysis using Natural Language Processing concepts: A Review

The Software Development Life Cycle (SDLC) starts with eliciting require...
research
08/21/2015

Posterior calibration and exploratory analysis for natural language processing models

Many models in natural language processing define probabilistic distribu...
research
05/06/2021

Reliability Testing for Natural Language Processing Systems

Questions of fairness, robustness, and transparency are paramount to add...

Please sign up or login with your details

Forgot password? Click here to reset