UCL Discovery
UCL home » Library Services » Electronic resources » UCL Discovery

TCTracer: Establishing test-to-code traceability links using dynamic and static techniques

White, Robert; Krinke, Jens; (2022) TCTracer: Establishing test-to-code traceability links using dynamic and static techniques. Empirical Software Engineering , 27 (3) , Article 67. 10.1007/s10664-021-10079-1. Green open access

[thumbnail of f5f2e040-a6b9-4f07-a0b9-de73b6d60d76.pdf]
Preview
Text
f5f2e040-a6b9-4f07-a0b9-de73b6d60d76.pdf - Published Version

Download (668kB) | Preview

Abstract

Test-to-code traceability links model the relationships between test artefacts and code artefacts. When utilised during the development process, these links help developers to keep test code in sync with tested code, reducing the rate of test failures and missed faults. Test-to-code traceability links can also help developers to maintain an accurate mental model of the system, reducing the risk of architectural degradation when making changes. However, establishing and maintaining these links manually places an extra burden on developers and is error-prone. This paper presents TCTracer, an approach and implementation for the automatic establishment of test-to-code traceability links. Unlike existing work, TCTracer operates at both the method level and the class level, allowing us to establish links between tests and functions, as well as between test classes and tested classes. We improve over existing techniques by combining an ensemble of new and existing techniques that utilise both dynamic and static information and exploiting a synergistic flow of information between the method and class levels. An evaluation of TCTracer using five large, well-studied open source systems demonstrates that, on average, we can establish test-to-function links with a mean average precision (MAP) of 85% and test-class-to-class links with an MAP of 92%.

Type: Article
Title: TCTracer: Establishing test-to-code traceability links using dynamic and static techniques
Open access status: An open access version is available from UCL Discovery
DOI: 10.1007/s10664-021-10079-1
Publisher version: https://doi.org/10.1007/s10664-021-10079-1
Language: English
Additional information: This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made.
UCL classification: UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science
UCL > Provost and Vice Provost Offices > UCL BEAMS
UCL
URI: https://discovery.ucl.ac.uk/id/eprint/10145439
Downloads since deposit
55Downloads
Download activity - last month
Download activity - last 12 months
Downloads by country - last 12 months

Archive Staff Only

View Item View Item