The HTML5 <canvas> is widely used to display high quality graphics in web applications. However, the combination of web, GUI, and visual techniques that are required to build <canvas> applications, together with the lack of testing and debugging tools, makes developing such applications very challenging. To help direct future research on testing <canvas> applications, in this paper we present a taxonomy of testable <canvas> issues. First, we extracted 2,403 <canvas>-related issue reports from 123 open-source GitHub projects that use the HTML5 <canvas>. Second, we constructed our taxonomy by manually classifying a random sample of 332 issue reports. Our manual classification identified five broad categories of testable <canvas> issues, such as Visual and Performance issues. We found that Visual issues are the most frequent (35%), while Performance issues are relatively infrequent (5%). We also found that many testable <canvas> issues that present themselves visually on the <canvas> are actually caused by other components of the web application. Our taxonomy of testable <canvas> issues can be used to steer future research into <canvas> issues and testing.
翻译:HTML5 <canvas> 被广泛用于在Web应用中显示高质量图形。然而,构建<canvas>应用所需的Web、GUI和可视化技术的组合,加之缺乏测试与调试工具,使得开发此类应用极具挑战性。为引导<canvas>应用测试的未来研究,本文提出了一种可测试<canvas>问题的分类体系。首先,我们从123个使用HTML5 <canvas>的开源GitHub项目中提取了2403个<canvas>相关的问题报告。随后,通过手动分类332个随机采样的问题报告构建分类体系。人工分类识别出五大类可测试<canvas>问题,包括可视化问题和性能问题等。研究发现,可视化问题最为常见(占比35%),而性能问题相对较少(占比5%)。同时发现,许多在<canvas>上呈现为视觉问题的可测试<canvas>问题实际上由Web应用的其他组件引发。本文提出的可测试<canvas>问题分类体系可指导未来关于<canvas>问题及其测试的研究方向。