Skip to main content

Understanding Test Debt

  • Chapter
  • First Online:
Trends in Software Testing

Abstract

Technical debt occurs when teams knowingly or unknowingly make technical decisions in return for short-term gain(s) in their projects. The test dimension of technical debt is known as test technical debt (or test debt). Test debt is an emerging topic and has received considerable interest from software industry in the last few years. This chapter provides an overview of test debt, factors that contribute to test debt, and strategies for repaying test debt. The chapter also discusses how to identify “test smells” and refactor them for repaying technical debt in industrial projects using numerous examples and case studies. This chapter would be of considerable value to managers and leads working in IT companies as well as researchers working in the area of test debt.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 129.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Note that the categories in this classification are neither mutually exclusive nor jointly exhaustive.

References

  1. G. Suryanarayana, G. Samarthyam, T. Sharma, Refactoring for software design smells: managing technical debt (Morgan Kaufmann/Elsevier, 2014)

    Google Scholar 

  2. W. Cunningham, The WyCash Portfolio management system, experience report, OOPSLA ’92 (1992)

    Google Scholar 

  3. I Gat, Opening statement on technical debt special issue. J. Inf. Technol. Manage., Cutter IT J. (2014)

    Google Scholar 

  4. Jim Highsmith, Zen and the Art of Software Quality, Agile2009 Conference, 2009

    Google Scholar 

  5. Z. Li, P. Avgeriou, P. Liang, A systematic mapping study on technical debt and its management. J. Syst. Softw. (2014)

    Google Scholar 

  6. R.L. Nord, I. Ozkaya, P. Kruchten, M. Gonzalez, In search of a metric for managing architectural debt. Joint 10th Working IEEE/IFIP Conference on Software Architecture (WICSA) and 6th European Conference on Software Architecture (ECSA), Helsinki, Finland, August 2012

    Google Scholar 

  7. A. Martini, J. Bosch, M. Chaudron, Architecture technical debt: understanding causes and a qualitative model. 40th EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA) (2014)

    Google Scholar 

  8. K. Wiklund, S. Eldh, D. Sundmark, K. Lundqvist, Technical debt in test automation. IEEE Sixth International Conference on Software Testing, Verification and Validation (2013)

    Google Scholar 

  9. K. Pugh, The risks of acceptance test debt. Cutter IT J. (2010)

    Google Scholar 

  10. A. Qusef, G. Bavota, R. Oliveto, A.D. Lucia, D. Binkley, Scotch: test-to-code traceability using slicing and conceptual coupling. Proceedings of the 27th IEEE International Conference on Software Maintenance (2011), pp. 63–72

    Google Scholar 

  11. A.D. Leon, M.F. Moonen, A. Bergh, G. Kok, Refactoring test code. Technical report (CWI, Amsterdam, The Netherlands, 2001)

    Google Scholar 

  12. S.M.A. Shah, M. Torchiano, A. Vetro, M. Morisio, Exploratory testing as a source of technical debt”, IT Prof. 16 (2014)

    Google Scholar 

  13. R.C. Martin, Clean code: a handbook of agile software craftsmanship (Prentice Hall, USA, 2009)

    Google Scholar 

  14. G. Campbell, Patroklos P. Papapetrou, SonarQube in action (Manning Publications Co., USA, 2013)

    Google Scholar 

  15. K. Beck, Test-driven development: by example (Addison-Wesley Professional, USA, 2003)

    Google Scholar 

  16. L. Williams, R.R. Kessler, Pair programming illuminated (Addison-Wesley Professional, USA, 2003)

    Google Scholar 

  17. A. Cockburn, L. Williams, The costs and benefits of pair programming. Extreme Programming Examined (2000)

    Google Scholar 

  18. S. Mancuso, The software craftsman: professionalism, Pragmatism, Pride (Prentice Hall, USA, 2014)

    Google Scholar 

  19. W.F. Opdyke, Refactoring object-oriented frameworks, Ph.D. thesis (University of Illinois at Urbana-Champaign, Illinois, 1992)

    Google Scholar 

  20. A. van Deursen, L. Moonen, The video store revisited—thoughts on refactoring and testing. Proceedings of International Conference on eXtreme Programming and Flexible Processes in Software Engineering (XP) (Alghero, Italy, 2002), pp. 71–76

    Google Scholar 

  21. O. Hazzan (ed.), Agile processes in software engineering and extreme programming. Proceedings of XP 2011 (Springer, Berlin, 2011)

    Google Scholar 

  22. K. Beck, C. Andres, Extreme programming explained: embrace change, 2nd edn. (Addison-Wesley, USA, 2004)

    Google Scholar 

  23. J. Shore, S. Warden, The art of agile development (O’Reilly Media, USA, 2007)

    Google Scholar 

  24. V. Moncompu, Agile test automation: transition challenges and ways to overcome them. Pacific NW Software Quality Conferences (2013)

    Google Scholar 

  25. Managing Software Debt, Building for inevitable change (Addison-Wesley Professional, Chris Sterling, 2010)

    Google Scholar 

  26. Workshop Series on Managing Techincal Debt, Carnegie Mellon—Software Engineering Institute, http://www.sei.cmu.edu/community/td2014/series/. Last accessed 29 Aug 2015

  27. G. Meszaros, xUnit test patterns: refactoring test code (Addison-Wesley, USA, 2007)

    Google Scholar 

  28. B. Van Rompaey, et al., On the detection of test smells: a metrics-based approach for general fixture and eager test. IEEE Transac. Softw. Eng. (2007)

    Google Scholar 

  29. H. Neukirchen, M. Bisanz, Utilising code smells to detect quality problems in TTCN-3 test suites. Test. Softw. Commun. Syst. (Springer, Berlin, 2007)

    Google Scholar 

  30. B. Gabriele, et al., An empirical analysis of the distribution of unit test smells and their impact on software maintenance. 28th IEEE International Conference on Software Maintenance (ICSM, UK, 2012)

    Google Scholar 

  31. S. Reichhart, T. Girba, S. Ducasse, Rule-based assessment of test quality. J. Object Technol. 6(9), 231–251 (2007)

    Article  Google Scholar 

  32. I. Burnstein, A. Homyen, R. Grom C.R. Carlson, A model to assess testing process maturity. CROSSTALK (1998)

    Google Scholar 

  33. J. Andersin, TPI–a model for test process improvement. Seminar on Quality Models for Software Engineering (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ganesh Samarthyam .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer Science+Business Media Singapore

About this chapter

Cite this chapter

Samarthyam, G., Muralidharan, M., Anna, R.K. (2017). Understanding Test Debt. In: Mohanty, H., Mohanty, J., Balakrishnan, A. (eds) Trends in Software Testing. Springer, Singapore. https://doi.org/10.1007/978-981-10-1415-4_1

Download citation

  • DOI: https://doi.org/10.1007/978-981-10-1415-4_1

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-10-1414-7

  • Online ISBN: 978-981-10-1415-4

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics