SikuliX

SikuliX是一个基于图像识别的GUI自动化测试工具。

它提供像下面的脚本进行GUI自动化。

1
2
3
4
5
6
openApp(someApp) # we use an application someApp
click(imageButton.png) # we click some button
wait(imageExpected.png) # we wait for the app to react and show the expected result on the screen
type(“some text”); type(Key.ENTER) # we fill in some text and press ENTER
wait(imageExpected1) # again we wait for some expected reaction or result
click(…) # we click …

SikuliX on Windows XP

安装

  1. 最新的SikuliX版本(2.0.x)已不支持Windows XP,我们需要下载更老的支持Windows XP的版本(1.0.0)。

    SikuliX1.0.0的文档在这里

  2. 下载支持Windows XP的JDK 1.7

  3. 参考下面的图例设置JAVA环境变量

测试

安装完成之后,便可以打卡Sikuli IDE进行测试了。

上面的示例中,双击打开了我的电脑。

再写一个例子,创建一个文本文件,输入test,再另存到桌面上为test.txt,再关闭文件。

脚本如下:

1
2
3
4
5
6
7
8
9
10
11
12
notepad = App.open("notepad.exe")
wait(1)
notepad.focus()
type("test")
click("Screenshot_1.png")
wait(1)
click("Screenshot_2.png")
wait(1)
click("Screenshot_3.png")
type("test.txt")
click("Screenshot_4.png")
notepad.close()

效果:

注意:如果在Windows XP下Sikuli IDE的屏幕截图不可用,可下载lightshot,事先把所需要的图片截好,再在Sikuli IDE中导入图片。

命令行运行脚本

1
$ Sikuli-IDE.exe -r test.sikuli

test.sikuli是指包含图片和Python脚本的文件夹路径。