Testing Software in Production Environments with Data from the Field

Luca Gazzola, Leonardo Mariani, Matteo Orru, Mauro Pezze, Martin Tappler

Research output: Chapter in Book/Report/Conference proceedingConference paperpeer-review

Abstract

Software systems may fail in production environments, causing system crashes, erroneous outputs, and overall system instability. Thoroughly testing software systems in development environments can reduce but not avoid failures, due to both the complexity of software applications, which may lead to a myriad of execution conditions impossible to sample exhaustively, and the many behaviors that emerge in production, which can be hardly predicted and exercised during development. This paper presents field-ready test cases, tests designed to run in production environments, aiming to proactively execute soft-ware components in yet unexplored execution scenarios, exposing error states before they result in system failures. Intuitively, the approach conceives the production environment as a testbed for opportunistically executing unit test cases that exploit the objects that become available as test data. The paper presents the results of a set of experiments with field-ready test cases that we produced for the JFreeChart and Apache Commons Lang libraries. Our field-ready test suites execute 64% of the faults that the original test suites miss, and exposes 33% of the missed faults.

Original languageEnglish
Title of host publicationProceedings - 2022 IEEE 15th International Conference on Software Testing, Verification and Validation, ICST 2022
PublisherIEEE
Pages58-69
Number of pages12
ISBN (Electronic)9781665466790
DOIs
Publication statusPublished - 2022
Event15th IEEE International Conference on Software Testing, Verification and Validation: ICST 2022 - Online, Virtual, Spain
Duration: 4 Apr 202213 Apr 2022

Conference

Conference15th IEEE International Conference on Software Testing, Verification and Validation
Country/TerritorySpain
CityVirtual
Period4/04/2213/04/22

Keywords

  • Fault detection
  • Field testing
  • Field-Ready test cases

ASJC Scopus subject areas

  • Artificial Intelligence
  • Software
  • Safety, Risk, Reliability and Quality

Fingerprint

Dive into the research topics of 'Testing Software in Production Environments with Data from the Field'. Together they form a unique fingerprint.

Cite this