西库里无法通过詹金斯在屏幕上找到图像

时间:2019-11-08 20:39:24

标签: java maven jenkins sikuli-script sikuli-x

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

我现在必须将这些测试整合到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的问题。如果是这样,如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

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

System.out.println(getBundlePath());

这将打印出当前配置的路径,Sikuli在其中查找图像文件。我认为它会在错误的位置查找文件。将路径设置到正确的位置。您可以这样做:

ImagePath.setBundlePath(correctPath);