IEEE Access (Jan 2022)

Parallel Specification-Based Testing for Concurrent Programs

  • Canh Minh Do,
  • Kazuhiro Ogata

DOI
https://doi.org/10.1109/ACCESS.2022.3155629
Journal volume & issue
Vol. 10
pp. 24955 – 24975

Abstract

Read online

The paper proposes a new testing technique for concurrent programs. The technique is a specification-based testing. For a formal specification S and a concurrent program P, state sequences are generated from P and checked to be accepted by S. We suppose that S is specified in Maude and P is implemented in Java. Java Pathfinder (JPF) and Maude are then used to generate state sequences from P and to check if such state sequences are accepted by S, respectively. Even without checking any property violations with JPF, JPF often encounters the notorious state space explosion while only generating state sequences. Thus, we propose a technique to generate state sequences from P and check if such state sequences are accepted by S in a stratified way. A tool is developed to support the proposed technique that can be processed naturally in parallel. Some experiments demonstrate that the proposed technique mitigates the state space explosion, which cannot be achieved with the straightforward use of JPF.

Keywords