Automated test case generation for the Paxos single-decree protocol using a Coloured Petri Net model

Implementing test suites for distributed software systems is a complex and time-consuming task due to the number of test cases that need to be considered in order to obtain high coverage. We show how a formal Coloured Petri Net model can be used to automatically generate a suite of test cases for th...

Full description

Saved in:
Bibliographic Details
Published inJournal of logical and algebraic methods in programming Vol. 104; pp. 254 - 273
Main Authors Wang, Rui, Kristensen, Lars Michael, Meling, Hein, Stolz, Volker
Format Journal Article
LanguageEnglish
Published Elsevier Inc 01.04.2019
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Implementing test suites for distributed software systems is a complex and time-consuming task due to the number of test cases that need to be considered in order to obtain high coverage. We show how a formal Coloured Petri Net model can be used to automatically generate a suite of test cases for the Paxos distributed consensus protocol. The test cases cover both normal operation of the protocol as well as failure injection. To evaluate our model-based testing approach, we have implemented the Paxos protocol in the Go programming language using the quorum abstractions provided by the Gorums framework. Our experimental evaluation shows that we obtain high code coverage for our Paxos implementation using the automatically generated test cases.
ISSN:2352-2208
DOI:10.1016/j.jlamp.2019.02.004