Sikuli – 可视化编程
如需转载,请注明出处! WebSite: http://www.jjos.org/ 作者: 姜江 linuxemacs@gmail.com QQ: 457283 昨天从李笑来老师的twitter中看有人推荐了Sikuli这款编程软件,该软件由麻省理工大学的开发者开发,其中主要的开发人员是台湾的华人张琮翔。 Skuli是一款可视化的编程语言,目前最新版本是0.10,提供了Sikuli脚本、供Jython使用的API以及一个Skuli的集成开发环境。这款编程语言环境很有意思的一点是,只要用鼠标将需要加入到脚本中的控件截图即可,编程环境会自动识别用户抓图的内容,将其转换成相应的内部脚本。用户仅仅需要关心脚本中个个控件之间的逻辑关系即可,而不再需要为繁琐的UI控件的使用编写冗长的代码。 左边,就是一个Sikuli语言的例子,该例子的功能是联系Skype上指定的用户。这个程序首先是定义了一个字典对象V,对象中有两个元素,元素的KEY和VALUE都是使用鼠标截屏方式获取的UI控件。接着是一个WHILE循环,该循环中会查找欲联系的SKYPE联系人,然后调用V字典中定义的行为(挂断还是接通)。通过Sikuli,自动控制SKYPE接通和挂断的例子实现起来也就花费不到5分钟时间。 对于一般用户和Programmer来说,Sikuli是一款非常值得使用的软件。一般用户可以使用Sikuli从每日繁琐的重复性的工作中解脱出来。比如,可以通过Sikuli自动收取邮件,甚至是自动回复邮件。对于Programmer来说,Sikuli是一款非常值得使用的UI测试工具。以往欲编写一个UI测试框架,难免会设计到冗长复杂的UI控件细节上,而使用Sikuli测试人员只需要关心控件触发行为之间的逻辑即可,利马可以从琐碎的API中解脱出来。 这里不得不提的是,在Mac上有Automate和AppleScript可以完成很多自动化工具,但是相较起来,Sikuli对用户的编程要求更低,用户使用的体验更好(绝大多数工作都用截屏方式完成)。 [这里] 提供了一些Sikuli使用样列 [这里] 是Sikuli的官方博客,里面不少好的示例 [这里] 提供了丰富的Sikuli使用和开发文档 安装 Sikuli采用Java语言开发,支持Mac OS X, Windows,Linux等多个平台。目前,最新发布版本是0.9.9版本,可以从下面连接中获得相应版本。 Mac OS X Leopard (OS X 10.5) Snow Leopard(OS X 10.6) Linux 需要系统安装了Java 6运行时环境,wmctrl, OpenCV(libcv1, libcvaux1, libhihgui1) ZIP版本 Windows 首先,需要在系统上安装JAVA 6运行时环境,可以从这里下载。 ZIP版本(只需要解压缩即可直接使用0 自安装版本 ~~~ END ~~~ From Jelly's Blog, post Sikuli [...]