Research Article Open Access

Estόria: A Framework for Code and Execution Reuse between Test Classes

Lucas Pereira da Silva1 and Patrícia Vilain1
  • 1 Universidade Federal de Santa Catarina, Brazil

Abstract

Manual implementation of test code can lead to maintainability problems such as test code duplication. Strategies to avoid test code duplication and to promote test code reuse exist in the literature. However, it becomes increasingly difficult to apply these strategies as the system evolves and the number of test increases. In this study, we present a novel strategy to reuse test setup code from other test classes without breaking the independency principle of the Test Automation Manifesto. We implemented this strategy in a framework called Estόria. Beyond test code reuse, the framework also enables the reuse of setup execution. Test execution reuse is important because it reduces testing runtime and allows a quicker feedback to test developers. The overall impact in promoting both code and execution reuse of test setup is an improvement in test maintainability and a reduction in testing effort. Experimental results showed a reduction of 47.62% of duplicate test lines using our strategy. In addition, execution reuse allowed to reduce the execution time by a ratio of 8.

Journal of Computer Science
Volume 17 No. 2, 2021, 90-111

DOI: https://doi.org/10.3844/jcssp.2021.90.111

Submitted On: 25 November 2020 Published On: 11 February 2021

How to Cite: da Silva, L. P. & Vilain, P. (2021). Estόria: A Framework for Code and Execution Reuse between Test Classes. Journal of Computer Science, 17(2), 90-111. https://doi.org/10.3844/jcssp.2021.90.111

  • 2,449 Views
  • 1,013 Downloads
  • 0 Citations

Download

Keywords

  • Software Testing
  • Test Code
  • Test Code Reuse
  • Test Execution Reuse
  • Fixture
  • Fixture Setup
  • Test Class