Search-based Testing for Scratch Programs

09/09/2020
by   Adina Deiner, et al.
0

Block-based programming languages enable young learners to quickly implement fun programs and games. The Scratch programming environment is particularly successful at this, with more than 50 million registered users at the time of this writing. Although Scratch simplifies creating syntactically correct programs, learners and educators nevertheless frequently require feedback and support. Dynamic program analysis could enable automation of this support, but the test suites necessary for dynamic analysis do not usually exist for Scratch programs. It is, however, possible to cast test generation for Scratch as a search problem. In this paper, we introduce an approach for automatically generating test suites for Scratch programs using grammatical evolution. The use of grammatical evolution clearly separates the search encoding from framework-specific implementation details, and allows us to use advanced test acceleration techniques. We implemented our approach as an extension of the Whisker test framework. Evaluation on sample Scratch programs demonstrates the potential of the approach.

READ FULL TEXT

page 10

page 11

research
02/13/2022

Automated Test Generation for Scratch Programs

The importance of programming education has lead to dedicated educationa...
research
08/16/2021

Improving Readability of Scratch Programs with Search-based Refactoring

Block-based programming languages like Scratch have become increasingly ...
research
02/13/2022

Model-based Testing of Scratch Programs

Learners are often introduced to programming via dedicated languages suc...
research
03/15/2021

Anomaly Detection in Scratch Assignments

For teachers, automated tool support for debugging and assessing their s...
research
08/29/2022

Neuroevolution-Based Generation of Tests and Oracles for Games

Game-like programs have become increasingly popular in many software eng...
research
08/16/2021

Data-driven Analysis of Gender Differences and Similarities in Scratch Programs

Block-based programming environments such as Scratch are an essential en...
research
07/16/2023

Deduplicating and Ranking Solution Programs for Suggesting Reference Solutions

Referring to solution programs written by other users is helpful for lea...

Please sign up or login with your details

Forgot password? Click here to reset