MSc Thesis Defense by Martin Gielsgaard Grünbaum – Københavns Universitet

MSc Thesis Defense by Martin Gielsgaard Grünbaum


Property-based testing of Maritime Cloud Services.


The Maritime Service Description Language (MSDL) is a domain-specific language for writing API interfaces. Using an MSDL parser, Java code stubs can be generated for both an API consumer, and an API provider. The purpose of this thesis is to investigate whether property-based testing of MSDL-generated interfaces is possible, and whether the ScalaCheck library is a good choice for that purpose.

To address this we implement several cases consisting of an MSDL-based API, supplemented by a text description of the intended behavior of that API. Initial efforts reveal problems testing stateful systems using ScalaCheck, and we contribute several additions to the library and to testing MSDL-based API's, in an attempt to remedy these problems.


We find that (i) property-based testing can find several different kinds of bugs in MSDL-generated API interfaces; (ii) model-based testing in ScalaCheck offers the capability to represent complex interactions between API methods; (iii)the contributed implementation  of symbolic values needs further work; and (iv) further work is necessary to determine the feasability of ScalaCheck as a good choice for this purpose.

Supervisor: Ken Friis Larsen

External Examiner: Mads Rosendahl