什么是在Sikuli拍照的命令

时间:2013-05-25 02:01:03

标签: sikuli

我正在使用Sikuli IDE。我想知道截图的命令是什么,所以我可以在测试结束时捕获屏幕。

像这样的东西

try :
  if bla bla bla:
    print("blablabla")
  else:
    TAKESCREENSHOT()  #------------------> What command do I put here?
  print("TEST_FAILED")

3 个答案:

答案 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