1

我正在编写一个将不同图像转换为 JPG 的应用程序。它在复杂的目录结构上运行。在那里,一个目录可能包括其他目录、图像文件(JPG、GIF、PNG、TIFF)、PDF 文件、RAR/ZIP 档案,而这些档案又可能包括上述任何内容。该应用程序会找到可以转换为图像的所有内容,并将生成的 JPG 文件放入单独的文件夹中。

我如何编写集成测试来测试图像的转换?具体来说,我应该如何用所有文件伪造复杂的目录结构?

目前,我只是将一个示例目录结构存储在一个目录中,该目录结构是我手动组装的各种图像、PDF 和存档文件tests/。在一种setUp方法中,我将此示例目录代替实际数据并运行代码。我有一个想法自己生成所有这些示例文件(例如,通过 Imagemagick 生成 JPG),但事实证明这很难。

通常如何对图像进行集成测试?

4

1 回答 1

1

您是否编写自己的库来转换仅使用现有库的图像?在后一种情况下,您根本不对其进行测试。作者已经以某种方式对其进行了测试。您只需要在您的代码和您使用的图像库之间创建一个抽象层。然后您可以简单地检查您的代码是否使用所需的参数调用库。如果您真的坚持要测试图片,那么您需要使转换具有确定性(并将实际结果与预期结果进行比较),或者您需要使比较不那么严格(从忽略日期字段到 OCR 识别图像)。

测试文件更容易(您不需要基于概率的 OCR)。检查您的程序是否将所有文件放置在预期位置。

于 2014-02-18T02:43:49.550 回答