Oracles for testing software timeliness with uncertainty

C. Wang, F. Pastore, L. Briand

Research output: Contribution to journalArticlepeer-review

Abstract

Uncertainty in timing properties (e.g., detection time of external events) is a common occurrence in embedded software systems, since these systems interact with complex physical environments. Such time uncertainty leads to non-determinism. For example, time-triggered operations may either generate different valid outputs across different executions or experience failures (e.g., results not being generated in the expected time window) that occur only occasionally over many executions. For these reasons, time uncertainty makes the generation of effective test oracles for timing requirements a challenging task. To address the above challenge, we propose Stochastic Testing with Unique Input Output Sequences, an approach for the automated generation of stochastic oracles that verify the capability of a software system to fulfill timing constraints in the presence of time uncertainty. Such stochastic oracles entail the statistical analysis of repeated test case executions based on test output probabilities predicted by means of statistical model checking. Results from two industrial case studies in the automotive domain demonstrate that this approach improves the fault detection effectiveness of tests suites derived from timed automata compared to traditional approaches.

Original languageEnglish
Article number1
JournalACM Transactions on Software Engineering and Methodology
Volume28
Issue number1
DOIs
Publication statusPublished - Nov 2018
Externally publishedYes

Keywords

  • Probabilistic unique input output sequences
  • Test oracles generation
  • Time uncertainty
  • Timing specifications

Fingerprint

Dive into the research topics of 'Oracles for testing software timeliness with uncertainty'. Together they form a unique fingerprint.

Cite this