Learners are often introduced to programming via dedicated languages such as SCRATCH, where block-based commands are assembled visually in order to control the interactions of graphical sprites. Automated testing of such programs is an important prerequisite for supporting debugging, providing hints, or assessing learning outcomes. However, writing tests for SCRATCH programs can be challenging: The game-like and randomised nature of typical SCRATCH programs makes it difficult to identify specific timed input sequences used to control the programs. Furthermore, precise test assertions to check the resulting program states are incompatible with the fundamental principle of creative freedom in programming in SCRATCH, where correct program behaviour may be implemented with deviations in the graphical appearance or timing of the program. The event-driven and actor-oriented nature of SCRATCH programs, however, makes them a natural fit for describing program behaviour using finite state machines. In this paper, we introduce a model-based testing approach by extending an automated testing framework for SCRATCH programs called WHISKER. The model-based extension describes expected program behaviour in terms of state machines, which makes it feasible to check the abstract behaviour of a program independent of exact timing and pixel-precise graphical details. Additionally, by deriving test inputs from a finite state machine even challenging games can be adequately tested. A video demonstrating the proposed tool is available at the following URL: https://youtu.be/edgCNbGSGEY
Tue 5 AprDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
11:30 - 12:45 | ICST Automated Testing ITesting Tools / Research Papers at Margaret Hamilton Chair(s): Tanja E. J. Vos Universitat Politècnica de València and Open Universiteit | ||
11:30 15mTalk | Applying Symbolic Execution to Test Implementations of a Network Protocol Against its Specification Research Papers Hooman Asadian Uppsala University, Paul Fiterau-Brostean Uppsala University, Bengt Jonsson Uppsala University, Sweden, Konstantinos (Kostis) Sagonas Uppsala University, Sweden Pre-print | ||
11:45 15mTalk | Model-based Testing of Scratch Programs Testing Tools Katharina Götz University of Passau, Patric Feldmeier University of Passau, Gordon Fraser University of Passau | ||
12:00 15mTalk | CITRUS: Automated Unit Testing Tool for Real-world C++ Programs Testing Tools | ||
12:15 15mTalk | Symbolic Verification of Message Signatures in MPI Research Papers Hengbiao Yu National University of Defense Technology, Banghu Yin National University of Defense Technology, Xin Yi National University of Defense Technology | ||
12:30 15mLive Q&A | Discussion and Q&A Research Papers |