Improving Dynamic Partial Order Reductions for Concolic Testing

  • Authors:
  • Olli Saarikivi;Kari Kahkonen;Keijo Heljanko

  • Affiliations:
  • -;-;-

  • Venue:
  • ACSD '12 Proceedings of the 2012 12th International Conference on Application of Concurrency to System Design
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Testing multi-threaded programs is hard due to the state explosion problem arising from the different interleavings of concurrent operations. The dynamic partial order reduction (DPOR) algorithm by Flanagan and Godefroid is one solution to reducing this problem. We present a modification to this algorithm that allows it to exploit the commutativity of read operations and provide further reduction. To enable testing of multi-threaded programs that also take input we show that it is possible to combine DPOR with concolic testing. We have implemented our modified DPOR algorithm in the LCT concolic testing tool. We have also implemented the sleep set algorithm, which can be used along with DPOR to provide further reduction. As the LCT tool was designed for distributed use we have modified the sleep set algorithm for use in a distributed testing client-server setting.