Makina: A New QuickCheck State Machine Library





Publicado en

Actas de las XXI Jornadas de Programación y Lenguajes (PROLE 2022)

Licencia Creative Commons


This article presents Makina, a new library and a domain specific language for writing property-based testing models for 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 defin- ing 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. More- over, to promote model reuse, the domain specific language provides constructs to permit models to be defined in terms of collections of previously defined models.


Acerca de Bueso de Barrio, Luis Eduardo

Palabras clave

Elixir, Property-based Testing, State Machines
Página completa del ítem
Notificar un error en este resumen
Mostrar cita
Mostrar cita en BibTeX
Descargar cita en BibTeX