4

我有一个 Maven 项目设置来运行我的 JUnit 测试。我正在使用 Sikuli 单击屏幕上的某些图像。在终端中使用“mvn test”命令或通过 Eclipse 执行我的测试时,它将起作用。

我现在必须将这些测试集成到 Jenkins 中,我认为这很简单;然而,这种情况并非如此。在 Jenkins 中创建作业后,我执行了“mvn test”命令来运行我的测试,maven 确实运行了测试,但测试总是会失败,因为 Sikuli 在屏幕上找不到图像。Sikuli 错误消息是

\Jenkins\workspace\Smoke_Test_Suite\Console\src\main\java\resources\main-widget\calc.PNG: (229x325) in R[0,0 1024x768]@S(0)

有没有人遇到过 Sikuli 和 Jenkins 的这个问题。如果是这样,如何解决这个问题?

4

1 回答 1

1

似乎找不到图像文件,而不是屏幕上的图案本身。环境变量配置可能存在一些差异,并且在通过 Jenkins/Maven 运行时,路径不正确。要调试此问题以更好地了解实际配置的内容,请尝试将以下行添加到您的代码中并再次使用 Jenkins 运行它:

System.out.println(getBundlePath());

这将打印出当前配置的 Sikuli 查找图像文件的路径。我假设它会在不正确的位置查找文件。将路径设置到正确的位置。你可以做:

ImagePath.setBundlePath(correctPath);
于 2019-11-09T15:57:09.213 回答