Scratch 的基于块的测试框架
软件工程
2024-10-14 v1 计算机与社会
摘要
基于块的编程环境如 Scratch 在入门编程课程中广泛使用。它们通过消除语法错误,帮助学习编程概念,但逻辑错误仍可能破坏预期的程序行为。寻找此类错误需要进行测试,即运行程序并检查其行为。在许多编程环境中,可通过提供可执行测试代码来自动化此步骤;在 Scratch 中,测试只能通过调用事件、用户输入和观察渲染舞台来手动完成。虽然这在学习者而言可能足够,但缺乏自动化测试可能阻碍教师为学生解决方案提供反馈。为此,我们在 Scratch 中引入了新的块类别,以启用自动化测试。通过这些块,学生和教师可以创建测试并在熟悉的块式编程逻辑中直接在 Scratch 环境中接收反馈。为 facilitate 创建测试并支持批量处理学生解决方案,我们扩展了 Scratch 用户界面,配备了相应的测试界面。我们采用 28 位教师为一个流行的 Scratch 游戏创建测试,然后使用这些测试对 21 个学生实现进行评估和反馈。教师测试的总体准确率为 0.93,证明教师能够创建并有效使用测试。随后的调查确认教师认为基于块的测试方法有用。
引用
@article{arxiv.2410.08835,
title = {A Block-Based Testing Framework for Scratch},
author = {Patric Feldmeier and Gordon Fraser and Ute Heuer and Florian Obermüller and Siegfried Steckenbiller},
journal= {arXiv preprint arXiv:2410.08835},
year = {2024}
}
备注
To appear at the 24th Koli Calling International Conference on Computing Education Research