Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfalls, and Opportunities DOI
Annibale Panichella, Sebastiano Panichella, Gordon Fraser

et al.

Published: Sept. 1, 2020

Test smells attempt to capture design issues in test code that reduce their maintainability. Previous work found such be highly common automatically generated test-cases, but based this result on specific static detection rules; although these are the original definition of "test smells", a recent empirical study showed developers perceive as overly strict and non-representative maintainability quality suites. This leads us investigate how effective smell tools In paper, we build dataset 2,340 cases by EVOSUITE for 100 Java classes. We performed multi-stage, cross-validated manual analysis identify six types label instances. benchmark performance two tools: one widely used prior work, recently introduced with express goal match developer perceptions smells. Our results show strategies poorly characterized suites; older tool's strategies, especially, misclassified over 70% smells, both missing real instances (false negatives) marking many smell-free tests smelly positives). patterns can improve tools, refine update certain highlight yet uncharacterized issues. findings suggest need (i) more appropriate metrics development practice; (ii) accurate evaluated primarily industrial contexts.

Language: Английский

Do android developers neglect error handling? a maintenance-Centric study on the relationship between android abstractions and uncaught exceptions DOI
Juliana Oliveira,

Deise Borges,

Thaisa Silva

et al.

Journal of Systems and Software, Journal Year: 2017, Volume and Issue: 136, P. 1 - 18

Published: Oct. 28, 2017

Language: Английский

Citations

33

The Essence of Software Engineering DOI
Volker Gruhn,

Rüdiger Striemer

Springer eBooks, Journal Year: 2018, Volume and Issue: unknown

Published: Jan. 1, 2018

Language: Английский

Citations

32

EvoSuite at the SBST 2016 tool competition DOI
Gordon Fraser, Andrea Arcuri

Published: May 14, 2016

EvoSuite is a search-based tool that automatically generates unit tests for Java code. This paper summarizes the results and experiences of EvoSuite's participation at fourth testing competition SBST 2016, where Evo-Suite achieved highest overall score.

Language: Английский

Citations

27

Effective and efficient API misuse detection via exception propagation and search-based testing DOI
Maria Kechagia, Xavier Devroey, Annibale Panichella

et al.

Published: July 10, 2019

Application Programming Interfaces (APIs) typically come with (implicit) usage constraints. The violations of these constraints (API misuses) can lead to software crashes. Even though there are several tools that detect API misuses, most them suffer from a very high rate false positives. We introduce Catcher, novel misuse detection approach combines static exception propagation analysis automatic search-based test case generation effectively and efficiently pinpoint crash-prone misuses in client applications. validate Catcher against 21 Java applications, targeting the platform's API. Our results indicate is able generate cases uncover 243 (unique) result empirical evaluation shows large number (77 cases) would remain undetected by traditional coverage-based generator EvoSuite. Additionally, on average, eight times faster than EvoSuite generating for identified misuses. Finally, we find majority exceptions triggered unexpected developers, i.e., not only unhandled source code but also listed documentation

Language: Английский

Citations

26

Revisiting Test Smells in Automatically Generated Tests: Limitations, Pitfalls, and Opportunities DOI
Annibale Panichella, Sebastiano Panichella, Gordon Fraser

et al.

Published: Sept. 1, 2020

Test smells attempt to capture design issues in test code that reduce their maintainability. Previous work found such be highly common automatically generated test-cases, but based this result on specific static detection rules; although these are the original definition of "test smells", a recent empirical study showed developers perceive as overly strict and non-representative maintainability quality suites. This leads us investigate how effective smell tools In paper, we build dataset 2,340 cases by EVOSUITE for 100 Java classes. We performed multi-stage, cross-validated manual analysis identify six types label instances. benchmark performance two tools: one widely used prior work, recently introduced with express goal match developer perceptions smells. Our results show strategies poorly characterized suites; older tool's strategies, especially, misclassified over 70% smells, both missing real instances (false negatives) marking many smell-free tests smelly positives). patterns can improve tools, refine update certain highlight yet uncharacterized issues. findings suggest need (i) more appropriate metrics development practice; (ii) accurate evaluated primarily industrial contexts.

Language: Английский

Citations

25