English
Related papers

Related papers: Automated Test Generation for Scratch Programs

200 papers

While professional integrated programming environments support developers with advanced debugging functionality, block-based programming environments for young learners often provide no support for debugging at all, thus inhibiting…

Software Engineering · Computer Science 2023-09-27 Adina Deiner , Gordon Fraser

Massive training of developers following the growing demands of the information technology industry requires teachers to automate their repetitive tasks. For training courses on programming, it is promising to use automatic generation and…

Software Engineering · Computer Science 2022-05-24 Peter Sovietov

Programming is increasingly taught using block-based languages like Scratch. While the use of blocks prevents syntax errors, learners can still make semantic mistakes, requiring feedback and help. As teachers may be overwhelmed by help…

Software Engineering · Computer Science 2025-04-18 Sebastian Schweikl , Gordon Fraser

Their highly adaptive nature and the combinatorial explosion of possible configurations makes testing context-oriented programs hard. We propose a methodology to automate the generation of test scenarios for developers of feature-based…

Software Engineering · Computer Science 2021-09-27 Pierre Martou , Kim Mens , Benoît Duhoux , Axel Legay

Introducing computational thinking in primary school curricula implies that teachers have to prepare appropriate lesson material. Typically this includes creating programming tasks, which may overwhelm primary school teachers with lacking…

Computers and Society · Computer Science 2023-06-27 Luisa Greifenstein , Ute Heuer , Gordon Fraser

In software development, encountering bugs is inevitable. However, opportunities to learn more about bug removal are limited. When students perform debugging tasks, they often use print statements because students do not know how to use a…

Software Engineering · Computer Science 2024-07-26 Aoi Kanaya , Takuma Migo , Hiroaki Hashiura

Docker has gained attention as a lightweight container-based virtualization platform. The process for building a Docker image is defined in a text file called a Dockerfile. A Dockerfile can be considered as a kind of source code that…

Software Engineering · Computer Science 2025-04-28 Yuki Goto , Shinsuke Matsumoto , Shinji Kusumoto

This article discusses a new technique to automatically generate test cases for object oriented programs. At the state of the art, the problem of generating adequate sets of complete test cases has not been satisfactorily solved yet. There…

Software Engineering · Computer Science 2020-05-20 Matteo Modonato

Bugs in Scratch programs can spoil the fun and inhibit learning success. Many common bugs are the result of recurring patterns of bad code. In this paper we present a collection of common code patterns that typically hint at bugs in Scratch…

Software Engineering · Computer Science 2021-12-03 Christoph Frädrich , Florian Obermüller , Nina Körber , Ute Heuer , Gordon Fraser

In large programming classes, it takes a significant effort from teachers to evaluate exercises and provide detailed feedback. In systems programming, test cases are not sufficient to assess exercises, since concurrency and resource…

Computers and Society · Computer Science 2024-11-07 Roberto Natella

Block-based programming environments such as Scratch play a central role in low-code education, yet evaluating the capabilities of AI agents to construct programs through Graphical User Interfaces (GUIs) remains underexplored. We introduce…

Artificial Intelligence · Computer Science 2026-02-12 Xingyi Zhang , Yulei Ye , Kaifeng Huang , Wenhao Li , Xiangfeng Wang

Providing feedback on programming assignments manually is a tedious, error prone, and time-consuming task. In this paper, we motivate and address the problem of generating feedback on performance aspects in introductory programming…

Programming Languages · Computer Science 2014-09-18 Sumit Gulwani , Ivan Radiček , Florian Zuleger

We conducted a systematic literature review on automated grading and feedback tools for programming education. We analysed 121 research papers from 2017 to 2021 inclusive and categorised them based on skills assessed, approach, language…

Software Engineering · Computer Science 2023-12-11 Marcus Messer , Neil C. C. Brown , Michael Kölling , Miaojing Shi

Block-based programming environments such as Scratch are an essential entry point to computer science. In order to create an effective learning environment that has the potential to address the gender imbalance in computer science, it is…

Software Engineering · Computer Science 2021-08-17 Isabella Graßl , Katharina Geldreich , Gordon Fraser

The automatic generation of computer programs is one of the main applications with practical relevance in the field of evolutionary computation. With program synthesis techniques not only software developers could be supported in their…

Neural and Evolutionary Computing · Computer Science 2021-08-30 Dominik Sobania , Dirk Schweim , Franz Rothlauf

Programming has become an essential component of K-12 education and serves as a pathway for developing computational thinking skills. Given the complexity of programming and the advanced skills it requires, previous research has introduced…

Human-Computer Interaction · Computer Science 2024-12-13 Yunnong Chen , Shuhong Xiao , Yaxuan Song , Zejian Li , Lingyun Sun , Liuqing Chen

Software testing is a core discipline in software engineering where a large array of research results has been produced, notably in the area of automatic test generation. Because existing approaches produce test cases that either can be…

Software Engineering · Computer Science 2023-10-11 Laura Plein , Wendkûuni C. Ouédraogo , Jacques Klein , Tegawendé F. Bissyandé

Fuzz Testing is a largely automated testing technique that provides random and unexpected input to a program in attempt to trigger failure conditions. Much of the research conducted thus far into Fuzz Testing has focused on developing…

Software Engineering · Computer Science 2019-07-30 Matthew Kelly , Christoph Treude , Alex Murray

Unit testing verifies the presence of faults in individual software components. Previous research has been targeting the automatic generation of unit tests through the adoption of random or search-based algorithms. Despite their…

Software Engineering · Computer Science 2022-04-13 Fabiano Pecorelli , Giovanni Grano , Fabio Palomba , Harald C. Gall , Andrea De Lucia

Programmable robots are engaging and fun to play with, interact with the real world, and are therefore well suited to introduce young learners to programming. Introductory robot programming languages often extend existing block-based…

Software Engineering · Computer Science 2022-08-30 Florian Obermüller , Robert Pernerstorfer , Lisa Bailey , Ute Heuer , Gordon Fraser