我正在使用Sikuli IDE。我想知道截图的命令是什么,所以我可以在测试结束时捕获屏幕。
像这样的东西
try :
if bla bla bla:
print("blablabla")
else:
TAKESCREENSHOT() #------------------> What command do I put here?
print("TEST_FAILED")
答案 0 :(得分:13)
该功能为capture
,如
screen = Screen()
file = screen.capture(screen.getBounds())
print("Saved screen as "+file)
需要屏幕截图,将其保存在文件中,并为您提供该文件的路径。
有关详细信息,请参阅Sikuli documentation on it。
答案 1 :(得分:4)
Screencaps的廉价Sikuli技巧是拥有一个已定义的区域,然后捕获该区域。
因此,如果您有想要限制的Chrome浏览器,请将其设置为:
App.focus('Chrome.app')
ChromeWindow = App('Chrome.app').window()
这将既将计算机聚焦到目标应用程序,又定义由应用程序的窗口参数组成的区域。然后运行:
capture(ChromeWindow)
然后使用shutil(import shutil
)将文件移动到本地目录中的任何位置。我通常将代码堆放入一个我可以在需要时调用的函数TakePicture(Name)
,其中Name
是我想在特定测试中调用时调用screencap的函数。 Sikuli既强大又容易!
答案 2 :(得分:1)
要制作具有焦点的窗口的屏幕截图,您可以使用:
transport