Makina: A New QuickCheck State Machine Library
This article presents Makina, a new library and a domain specific language for writing property-based testing models for \textit{stateful} programs. Models written in the new domain specific language are, using Elixir macros, rewritten into normal QuickCheck state machines. Our main goals with Makina are to facilitate the task of developing correct and maintainable models, and to encourage model reuse. To meet these goals, Makina provides a declarative syntax for defining model states and model commands. In particular, Makina encourages the typing of specifications, and ensures through its rewrite rules that such type information can be used by, e.g.,\ the Dialyzer tool, to effectively typecheck models. Moreover, to promote model reuse, the domain specific language provides constructs to permit models to be defined in terms of collections of previously defined models.
Thu 26 AugDisplayed time zone: Seoul change
20:00 - 21:30 | |||
20:00 10mDay opening | Welcome Erlang | ||
20:10 30mTalk | Graft: General Purpose Raft Consensus in Elixir Erlang Matthew Alan Le Brun University of Malta, Duncan Paul Attard University of Malta, Adrian Francalanza University of Malta DOI | ||
20:40 30mTalk | Makina: A New QuickCheck State Machine Library Erlang Luis Eduardo Bueso de Barrio Universidad Politécnica de Madrid, Lars-Åke Fredlund Universidad Politécnica de Madrid, Ángel Herranz Universidad Politécnica de Madrid, Clara Benac Earle Universidad Politécnica de Madrid, Julio Mariño Universidad Politécnica de Madrid DOI | ||
21:10 10mVision and Emerging Results | Lightning Talk: Expected Application of BeamAsm Erlang Susumu Yamazaki Univ. of Kitakyushu | ||
21:20 10mVision and Emerging Results | Lightning Talk: QuadBlockQuiz – Supply Chain Edition Erlang Duncan Sparrell sFractal Consulting |