Testing 图形输出的自动测试

Testing 图形输出的自动测试,testing,graphics,tdd,Testing,Graphics,Tdd,我想知道是否有任何工具或标准方法可以自动测试产生图形输出的程序 例如,构建了一个简单的绘画应用程序,允许用户在特定位置绘制圆和矩形。测试可能需要检查形状是否位于指定的准确位置 我的问题是:是否有一种标准的方法来自动化测试过程,而不是让测试人员一次又一次地手动检查输出?有几种方法,但最重要的是,GUI部分排在最后 GUI只负责(或应该)可视化数据。这意味着您有一些底层模型和功能,它们被告知在特定位置创建一个圆或矩形。您通常会首先测试它,以确保您的功能做了正确的事情,并且基础数据是正确的。常规API

我想知道是否有任何工具或标准方法可以自动测试产生图形输出的程序

例如,构建了一个简单的绘画应用程序,允许用户在特定位置绘制圆和矩形。测试可能需要检查形状是否位于指定的准确位置


我的问题是:是否有一种标准的方法来自动化测试过程,而不是让测试人员一次又一次地手动检查输出?

有几种方法,但最重要的是,GUI部分排在最后

GUI只负责(或应该)可视化数据。这意味着您有一些底层模型和功能,它们被告知在特定位置创建一个圆或矩形。您通常会首先测试它,以确保您的功能做了正确的事情,并且基础数据是正确的。常规API测试可以完全覆盖功能和模型

您的具体问题是检查可视化部分是否正确。您有两个自动化选项:

  • 使用屏幕截图并在静态预期屏幕截图和实际测试结果之间区分绘图画布
  • 使用跟踪:您可以从画布区域获取一个屏幕截图,并将其转换为一些向量图像,以允许您检查某些向量是否位于正确的位置
  • 一般来说,GUI细节(如正确的颜色、准确的位置)仍然是人工任务。您只能尽可能多地尝试使用API测试,并尽量减少人为因素