TestLocal: Just-in-time parametrized testing of local variables

Marcel Heimlich, Akbar Siami Namin

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Scopus citations

Abstract

Variables local to methods play an important role in implementing not only the logic of desired algorithms but also the control of global variables. The values of these variables dictate the paths to be taken while executing the program. While testing is an effective way to exercise the programs under test, the values of these local variables determines the reachability of execution paths. Hence, it is possible that these local variables control the execution of the program and thus may result in some paths never to be tested adequately. This paper introduces a methodology and a prototype tool, called “TestLocal”, to enable testing of methods by changing the values of local variables at runtime thus enabling traversing the paths that are hard to execute. By changing the values of local variables during the execution, the unexpected paths are intentionally forced to be executed. In comparison with the existing approaches (e.g., Microsoft IntelliTest), the proposed methodology requires little to no modifications to the given code. The novelty of the proposed approach is that it integrates a constraint solver and a debugger to forcefully execute unreachable paths.

Original languageEnglish
Title of host publicationProceedings of the ACM Symposium on Applied Computing
PublisherAssociation for Computing Machinery
Pages1874-1877
Number of pages4
ISBN (Print)9781450359337
DOIs
StatePublished - 2019
Event34th Annual ACM Symposium on Applied Computing, SAC 2019 - Limassol, Cyprus
Duration: Apr 8 2019Apr 12 2019

Publication series

NameProceedings of the ACM Symposium on Applied Computing
VolumePart F147772

Conference

Conference34th Annual ACM Symposium on Applied Computing, SAC 2019
CountryCyprus
CityLimassol
Period04/8/1904/12/19

Keywords

  • Debugging
  • Dynamic symbolic execution
  • SMT solver
  • Unit testing

Fingerprint Dive into the research topics of 'TestLocal: Just-in-time parametrized testing of local variables'. Together they form a unique fingerprint.

  • Cite this

    Heimlich, M., & Namin, A. S. (2019). TestLocal: Just-in-time parametrized testing of local variables. In Proceedings of the ACM Symposium on Applied Computing (pp. 1874-1877). (Proceedings of the ACM Symposium on Applied Computing; Vol. Part F147772). Association for Computing Machinery. https://doi.org/10.1145/3297280.3297613