Analysis of Static and Dynamic Test-to-code Traceability Information

  • Tamás Gergely
  • Gergő Balogh
  • Ferenc Horváth
  • Béla Vancsics
  • Árpád Beszédes
  • Tibor Gyimóthy

Abstract

Unit test development has some widely accepted guidelines. Two of them concern the test and code relationship, namely isolation (unit tests should examine only a single unit) and separation (they should be placed next to this unit). These guidelines are not always kept by the developers. They can however be checked by investigating the relationship between tests and the source code, which is described by test-to-code traceability links. Still, these links perhaps cannot be inferred unambiguously from the test and production code. We developed a method that is based on the computation of traceability links for different aspects and report Structural Unit Test Smells where the traceability links for the different aspects do not match. The two aspects are the static structure of the code that reflects the intentions of the developers and testers and the dynamic coverage which reveals the actual behavior of the code during test execution. In this study, we investigated this method on real programs. We manually checked the reported Structural Unit Test Smells to find out whether they are real violations of the unit testing rules. Furthermore, the smells were analyzed to determine their root causes and possible ways of correction.
Published
2018-01-01
How to Cite
Gergely, T., Balogh, G., Horváth, F., Vancsics, B., Beszédes, Árpád, & Gyimóthy, T. (2018). Analysis of Static and Dynamic Test-to-code Traceability Information. Acta Cybernetica, 23(3), 903-919. https://doi.org/10.14232/actacyb.23.3.2018.11
Section
Regular articles