我正在使用Apache FOP 1.0生成PDF文件。我想知道对结果PDF文件和与之相关的最佳实践进行单元测试。
答案 0 :(得分:1)
我不知道任何有助于PDF单元测试的工具。您可以将其转换为位图(例如,使用Apache PDFBox)并将其与参考位图进行比较,但这可能太脆弱了。
一个想法可能是从PDF对象生成XML格式并使用XMLUnit进行比较。这实际上会对Apache PDFBox项目IMO做出很好的贡献。使用PDFBox直接编写Java代码来检查PDF结构并不是很舒服。
另一种可能性是在内部执行Apache FOP对单元测试布局引擎的操作:渲染到代表格式化页面的one of the two XML-based intermediate formats。显然,这不会测试PDF输出本身,但我怀疑你实际上想要对生成的文档(即样式表)进行单元测试,不一定是实际的PDF,因为你可以依靠Apache FOP将中间格式正确地呈现为PDF。