Object-oriented metrics that predict maintainability
Journal of Systems and Software - Special issue on object-oriented software
Object-oriented metrics: measures of complexity
Object-oriented metrics: measures of complexity
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Test Driven Development: By Example
Test Driven Development: By Example
A Metrics Suite for Object Oriented Design
IEEE Transactions on Software Engineering
Detecting Design Flaws via Metrics in Object-Oriented Systems
TOOLS '01 Proceedings of the 39th International Conference and Exhibition on Technology of Object-Oriented Languages and Systems (TOOLS39)
Contributing to Eclipse: Principles, Patterns, and Plugins
Contributing to Eclipse: Principles, Patterns, and Plugins
Object-Oriented Metrics in Practice
Object-Oriented Metrics in Practice
Characterizing the Relative Significance of a Test Smell
ICSM '06 Proceedings of the 22nd IEEE International Conference on Software Maintenance
On The Detection of Test Smells: A Metrics-Based Approach for General Fixture and Eager Test
IEEE Transactions on Software Engineering
Clean Code: A Handbook of Agile Software Craftsmanship
Clean Code: A Handbook of Agile Software Craftsmanship
Growing Object-Oriented Software, Guided by Tests
Growing Object-Oriented Software, Guided by Tests
DECOR: A Method for the Specification and Detection of Code and Design Smells
IEEE Transactions on Software Engineering
Automated acceptance test refactoring
Proceedings of the 4th Workshop on Refactoring Tools
Evaluating the Lifespan of Code Smells using Software Repository Mining
CSMR '12 Proceedings of the 2012 16th European Conference on Software Maintenance and Reengineering
On understanding laws, evolution, and conservation in the large-program life cycle
Journal of Systems and Software
Utilising code smells to detect quality problems in TTCN-3 test suites
TestCom'07/FATES'07 Proceedings of the 19th IFIP TC6/WG6.1 international conference, and 7th international conference on Testing of Software and Communicating Systems
Understanding myths and realities of test-suite evolution
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Hi-index | 0.00 |
An important challenge in creating automated tests is how to design test fixtures, i.e., the setup code that initializes the system under test before actual automated testing can start. Test designers have to choose between different approaches for the setup, trading off maintenance overhead with slow test execution. Over time, test code quality can erode and test smells can develop, such as the occurrence of overly general fixtures, obscure in-line code and dead fields. In this paper, we investigate how fixture-related test smells evolve over time by analyzing several thousand revisions of five open source systems. Our findings indicate that setup management strategies strongly influence the types of test fixture smells that emerge in code, and that several types of fixture smells often emerge at the same time. Based on this information, we recommend important guidelines for setup strategies, and suggest how tool support can be improved to help in both avoiding the emergence of such smells as well as how to refactor code when test smells do appear.