在SoapUI免费版中使用PDFUtil的CompareMode对比PDF时报错求助
问题排查与解决方案
你遇到的No such property: compareMode for class: Script13错误,核心原因是缺少CompareMode枚举类的导入语句。CompareMode是PDFUtil库中单独的枚举类型,并非PDFUtil类的内部属性,直接在脚本中使用CompareMode.VISUAL_MODE会导致JVM找不到这个类。
具体修正步骤:
- 在脚本开头添加
CompareMode类的导入语句,和PDFUtil的导入放在一起 - 确认PDFUtil库版本支持
VISUAL_MODE枚举值(较旧版本可能需要核对枚举选项)
修正后的完整Groovy脚本代码:
import com.testautomationguru.utility.PDFUtil; import com.testautomationguru.utility.CompareMode; // 新增这行导入 PDFUtil pdfUtil = new PDFUtil(); String file1="C:/SoapOutPut/ENV1/TEST_DATA1.pdf"; String file2="C:/SoapOutPut/ENV1/TEST_DATA12.pdf"; pdfUtil.setCompareMode(CompareMode.VISUAL_MODE); pdfUtil.highlightPdfDifference(true); pdfUtil.setImageDestinationPath("c:/output/file"); pdfUtil.compare(file1, file2);
额外注意事项:
- 确保
c:/output/file目录已提前创建,否则对比生成的差异图片可能无法保存 - 核对两个PDF文件的路径是否正确,避免因文件不存在触发后续报错
- 确认SoapUI中已正确添加PDFUtil相关依赖jar包,防止出现其他类找不到的问题
内容的提问来源于stack exchange,提问作者shashi singh
相关产品推荐
相关产品推荐

