【发布时间】:2016-04-10 01:51:00
【问题描述】:
我在尝试在屏幕上查找图像时遇到问题,我尝试了两种不同的方式,但它似乎对我不起作用。 我正在尝试使用在屏幕上显示的 IOS 模拟器上运行的 Appium 来执行此操作,因此我认为这不是截屏的问题。
我正在运行 MAC OSX El Capitan 我已经在我的项目中导入了 Sikuli X java API
我还需要导入 MAC Sikuli 库 jar 吗?
这是我迄今为止尝试过的:
1.
Screen s = new Screen();
Pattern test = new Pattern("/Users/ealiaj/Desktop/Automation/workspace/WheelsUp - IOS/screenshot.jpg");
try {
s.find(test);
} catch (FindFailed e) {
}
2.
Screen s = new Screen();
try {
s.find("screenshot.jpg");
} catch (FindFailed e) {
}
我不断收到找不到错误。
错误信息:
FindFailed:在 S(0)[0,0 1440x900] 中找不到 /Users/ealiaj/Desktop/Automation/workspace/WheelsUp - IOS/screenshot1.jpg 第 2189 行,Region.java 文件中
这是屏幕上的图像,大红色矩形是我为其创建了屏幕截图并尝试查找的图像,但出现了错误。
我唯一能成功找到的是那个灰色矩形,或者至少它不会引发错误。
【问题讨论】:
-
您可以在不使用 Sikuli 的情况下执行此操作。在 appium 中创建函数,该函数捕获特定元素的屏幕截图(您要验证的内容)在运行时将其保存在您的系统中。并使用 Java 代码与您的基础图像文件匹配。
-
能否提供示例代码?谢谢
-
你能发布你看到的确切错误吗?
-
已在原帖中更新
-
@SadikAli 我也对您在评论中展示的方式感兴趣。您能否添加任何(文档)来源的示例或链接?
标签: java selenium-webdriver webdriver appium sikuli