A MOP Based DSL for Testing Java Programs using OCL - Clark, Tony (Electronic Communications of the EASST, 2010)
OCL is used to specify systems by defining pre and post-conditions for class operations. Typically, the conditions refer to properties and operations that are defined in a model. When the model is implemented, various implementation decisions are made regarding properties and operations that cause the OCL conditions to be inconsistent with the implementation. This paper defines a domain specific language (DSL) for testing and shows how a meta-object-protocol for OCL can be used to dynamically run tests written in the DSL against different Java implementations of the same model.