主要观点:保险客户交付团队希望实现对 PDF 文档中数据的自动化验证,作为回归测试的一部分,探索出三种解决方案,分别是基于坐标提取文本、查找已知值、基于规则提取,各有优缺点,且都可纳入自动化工作流。
关键信息:
- 交付团队需手动验证生成的 PDF 文档中的信息,随测试和模板增加,希望减少手动工作。
- PDF 数据提取不简单,其结构不像文本或 XML 文件有线性或层次结构,类似 HTML 文档。
- 方法 1 用 pdftextstripperbyarea 方法,需指定矩形区域坐标,开发 pdfvisualmapper 辅助应用,此方法简单但坐标固定,数据位置变化会导致提取错误。
- 方法 2 验证提取文件中的文本并搜索已知值,需创建输入文件指定搜索文本,一次搜索一个,找到标记为 found,未找到标记为 not found。
- 方法 3 更复杂,基于规则提取,定义规则导航和提取数据,比其他方法更灵活,可添加新规则,但依赖提取文件中的标记,标记位置变化需更新规则文件。
- 比较三种方法,提取已知数据时方法 2 较好,不知数据确切值时方法 1 和 3 较好,保证 PDF 数据布局不变时方法 1 优于方法 3,方法 1 可直接操作 PDF 文档,方法 2 和 3 需转换为文本文件。
- 每种方法初始需手动工作,创建输入文件后可应用于多个相同模板实例,具有可扩展性和灵活性。
重要细节: - 用 Java 代码展示了方法 1 的使用示例。
- 表格详细说明了方法 2 的输入文件和输出示例。
- 给出了方法 3 的规则文件示例。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。