Abstract
This paper presents an approach for automatically generating a testing oracle for train stations. Based on a model of a train station and a formal definition of the behavior of the station, Alloy is used to generate all positive traces from a given situation. By specifying the precondition (test input), a simulation of the station model gives all legal train movement from this state, which defines the testing oracle. This oracle can be used for checking the result of testing the implementation of the station by comparing the train movement from the test with the legal train movement specified by the oracle. We suggest a prototype implementation based on the Train Control Language and give an example oracle for a typical test-case. Furthermore, we elaborate on the benefits of using product line technology, given by the Common Variability Language, to reduce the analysis effort necessary to obtain the oracle for product models