Source code for the executable semantics presented in Master Thesis "Introducing Keyword-Driven Testing to System Level Testing Paradigms"

W.A.M. van Oort, G.J. Tretmans · Data Archiving and Networked Services (DANS) · 2021

DESCRIPTIONThe code presented in this repository is a formal representation of the semantics of a system level test run in a keyword-driven testing framework, Robot Framework. The semantics are expressed in Haskell and can be executed using GHC(i).CONTENTS- RobotSemantics: The semantic definitions for a test run in Robot Framework- TypedArgumentsExtension: The semantics of an extension written for Robot Framework- Examples: Three examples, demonstrating the relation between the semantic definitions and actual Robot Framework test cases and keyword libraries.SHORT SUMMARYSystem level acceptance tests should cover a large amount of traces in a system under test, for which many testing paradigms exist. However, system level acceptance tests are required to be understood by many stakeholders, which is not always taken into consideration when a system level testing paradigm is designed. Combining two or more paradigms might yield a system level testing approach which can get the best of both worlds. To see whether this is the case for keyword-driven testing, we consider a triad of system level testing paradigms: Behavior-Driven Testing, Model-Based Testing and Test Data Generation. In the thesis we introduce a formal semantic definition of a keyword-driven testing framework, Robot Framework, to be able to reason about what the considered paradigms would entail for a case study at Canon Production Printing. For each of the three considered paradigms, a conclusion is drawn as to whether the paradigm could benefit from a combination with keyword-driven testing and what the relation between the paradigm and keyword-driven testing would be in such a combination.The executable semantics presented in this repository ought to provide an unambiguous starting point for reasoning about the keyword-driven testing paradigm. Moreover, the executable semantics are used to express semantic implications of additional concepts and extensions for keyword-driven testing with Robot Framework.

Read the paper · More papers on PaperTik