我是Sikuli的新手。我正在尝试使用Sikuli和Cucumber设置自动化测试套件。
以下是我的步骤定义:
When(/^I click on DLM icon in the dock$/) do
puts "Init"
puts "Setting up screen"
@screen=Sikuli::Screen.new
puts "Going to click..."
@screen.click("/Users/shrivaw1/Documents/Anshul/Testing/DLM/Automation/cucumber/features/images/dlm-ico.png") # click the DLM icon
end
当我运行代码时,我总是得到以下错误:
The image '/Users/shrivaw1/Documents/Anshul/Testing/DLM/Automation/cucumber/features/images/dlm-ico.png' did not match in this region. (Sikuli::ImageNotFound)
./features/step_definitions/dlm.rb:16:in `/^I click on DLM icon in the dock$/'
features/feature_files/dlm.feature:7:in `When I click on DLM icon in the dock'
它说这个地区的图像不匹配。 (Sikuli :: ImageNotFound)。
我尝试了许多不同的图像,但观察到相同的错误。即使图像存在区域。当然,我在这里遗漏了一些东西。有人可以帮我解决这个问题吗?如果有人使用Sikuli和Cucumber创建了自动化框架,请分享您的经验和一些最佳实践。提前谢谢。
答案 0 :(得分:0)
该错误意味着Sikuli无法找到您用作磁盘上图案的图像。确保它确实存在于您指定的路径中,或者作为更好的解决方案,使用bundlePath变量。你可以在这里阅读:
答案 1 :(得分:0)
显然,问题出在Mac默认屏幕捕获工具(Cmd + Shift + 4)上。 拍摄的屏幕截图太大,无法在屏幕上识别。当我将图像调整为50%时,它可以正常工作。
感谢Eugene S的回答。
谢谢, Anshul