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>问题的分类法。首先,我们从使用HTML5 <canvas>的123个开源GitHub项目中提取了2403个<canvas>相关问题报告。其次,我们通过手动对332个问题报告的随机样本进行分类,构建了我们的分类法。我们的手动分类确定了五个广泛的可测试<canvas>问题类别,例如视觉和性能问题。我们发现视觉问题最频繁(35%),而性能问题相对不常见(5%)。我们还发现,很多在<canvas>上呈现视觉效果的可测试<canvas>问题实际上是由Web应用程序的其他组件引起的。我们的可测试<canvas>问题分类法可用于引导未来关于<canvas>问题和测试的研究。