• DocumentCode
    708974
  • Title

    Graphical editing support for QuickCheck models

  • Author

    Arts, Thomas ; Bogdanov, Kirill ; Gerdes, Alex ; Hughes, John

  • Author_Institution
    QuviQ AB, Goteborg, Sweden
  • fYear
    2015
  • fDate
    13-17 April 2015
  • Firstpage
    1
  • Lastpage
    6
  • Abstract
    QuickCheck can test a system by specifying a state machine for the API exported by that system. This state machine specification includes a list of possible API calls. Each call is accompanied by a precondition, a postcondition, a generator for the arguments, and a description of how the state is changed. Based on this specification QuickCheck generates a random sequence of API calls. The preconditions ensure that a generated sequence is valid, and the postconditions check that the system behaves as expected. Many systems require an initialisation call before other calls, describing the transition from an uninitialized to an initialised state. QuickCheck offers two ways of specifying transitions between states: using preconditions or a finite state machine abstraction. In this paper we show, by means of an example, that the latter approach is to be preferred. In addition, we present a recent extension to QuickCheck that allows a user to graphically create and edit a finite state machine specification. This extension simplifies and speeds up the specification of a finite state machine, which can be regarded as a formal model of the system, considerably. The graphical representation makes the formal model easier to understand, and visualises the distribution of API calls. Moreover, the extension allows the user to change this distribution.
  • Keywords
    application program interfaces; finite state machines; formal specification; program testing; API; QuickCheck model; finite state machine abstraction; formal model; graphical editing support; graphical representation; postconditions check; random sequence; state machine specification; Data models; Generators; Libraries; Servers; Software; Testing; Writing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Testing, Verification and Validation Workshops (ICSTW), 2015 IEEE Eighth International Conference on
  • Conference_Location
    Graz
  • Type

    conf

  • DOI
    10.1109/ICSTW.2015.7107473
  • Filename
    7107473