Java整合Sikuli和Asprise.OCR实现桌面自动化

原创 2016年05月30日 16:21:38

简介

Sikuli是一个使用“视觉图像匹配”方法来自动化图形用户界面(GUI)的工具。在Sikuli中,所有的Web元素应被视为一个图像,并存储在项目中。Sikuli将基于对作为参数传递的图像进行视觉匹配触发GUI交互。

Sikuli对flash对象(不具有ID或名称)非常有用。它在有一个稳定的图形用户界面(例如,GUI组件不可变)的情况下是很有用的。

甚至基于窗口的应用程序也可以使用Sikuli自动化。 Sikuli提供非常友好Sikuli-script.jar,它可以方便地与Selenium web Driver一起使用。我们甚至可以使用Sikuli来自动化Adobe视频音频播放器或网站上的Flash游戏。通过使用简单的API,使得编程更容易。

需要指出的是目前Sikuli-script.jar仅支持32位Java运行环境,所以使用64未JDK或者JRE的环境需要重新下载32位版本并修改环境变量JAVA_HOME才能使用。


实际用途

1.Sikuli可以用来自动化Flash对象或Flash网站。

2.它可以运用于自动化基于窗口的应用程序。我们可以自动化我们在屏幕上所看到的。

3.它提供了简单的API,即所有的方法都可以使用屏幕类对象进行访问。

4.它可以简单地与Selenium和所有其他工具集成。

5.使用Sikuli我们可以自动化桌面应用程序。

6.大多数的自动化测试工具不支持flash对象自动化(如Selenium)。Sikuli为自动化Flash对象提供了广泛的支持。

7.它采用强大的“视觉匹配”机制来自动化桌面和Flash对象。


Sikuli使用

Intellij idea2016为例:

1.使用32位JRE或JDK版本

2.下载Sikuli IDE windows版本(比如: "Sikuli X r930", portable version)

3.解压压缩包到项目目录并重命名,如"sikuli-ide"


4.配置环境变量SIKULI_HOME,填写上一步解压缩后sikuli-ide文件夹的物理路径

5.添加Sikuli-script.jar到项目依赖项中


常用的Sikuli方法: 

#1:创建Screen类对象

Screen是由Sikuli提供一个基类。我们需要首先创建该Screen类的对象,才可以访问所有Sikuli提供的方法。

语法:

Screen s=new Screen();

#2:单击一个元素

此方法用于点击屏幕上的特定图像。

语法:

s.click(“<>”);

例如:

s.click(“test.png”);

#3:右键单击一个元素

此方法用来右键点击屏幕上的特定图像。 

语法:

s.rightClick(“<>”);

例如:

s.rightClick(“test.png”);

#4:查找元素

此方法用于查找屏幕上的特定元素存在。

语法:

s.find(“<>”);

例如:

s.find(“test.png”);

 #5:双击一个元素

此方法用于触发屏幕上特定图像的双击事件

语法:

s.doubleClick(“<>”);

例如:

s.doubleClick(“test.png”);

#6:检查元素是否在屏幕上显示

这个方法是用来检查指定的元素是否存在于屏幕上。

语法:

s.exists(“<>”);

例如:

s.exists(“test.png”);

#7:在文本框输入一个字符串

这种方法是用来在文本框输入指定的文本。

语法:

s.type(“<>”,”String to be typed”);

例如:

s.type(“test.png”,“HI!!”);

#8:旋转指定的图像

这个方法是用来对图形元素进行旋转操作。

语法:

s.wheel(“<>”,<>,<>);

例如:

s.wheel(“test.png”,25,0);

 #9:拖放图片

这个方法是用来将图片从源位置拖放到目标位置的。

语法:

s.dragDrop(“<>”,”<>”);

例如:

s.dragDrop(“test.png”,“test1.png”);

#10:特定图像的滚动鼠标悬停

这个方法是用来对特定图像进行滚动悬停事件。

语法:

s.hover(“<>”);

例如:

s.hover(“test.png”);

#11:粘贴复制的字符串

这个方法用来在指定的文本框中粘贴文本。

语法:

s.paste(“<>”,”test”);

例如:

s.paste(“test.png”,“测试”);


版权声明:本文为博主原创文章,未经博主允许不得转载。

Sikuli自动化工具使用

SikuliX部署和基本使用说明 Sikuli X是一款通过图片来识别元素,后续进行基本鼠标键盘操作的工具,支持跨平台,适用于桌面端程序和web界面。主要用来补充codedUI和selenium识别...
  • luohuiye
  • luohuiye
  • 2016年12月05日 13:47
  • 605

sikuli自动化测试环境搭建和demo

官方文档:http://doc.sikuli.org/globals.html http://sikulix-2014.readthedocs.io/en/latest/index.html ...
  • hqzxsc2006
  • hqzxsc2006
  • 2016年05月25日 13:35
  • 3522

selenium结合最新版的sikuli使用

sikuli安装,去官网下载sikuli-setup.jar,地址:http://www.sikuli.org/download.html 在装有java环境的机器上直接双击jar文件(我的是Win...
  • M1011566442
  • M1011566442
  • 2015年09月09日 09:57
  • 3284

Sikuli-Script使用

Sikuli-IDE用起来方便,但是用到实际项目中还是有局限性的,Sikuli提供了Sikuli-Script的jar包,在Sikuli-X的安装目录下,这样就可以在 eclipse中使用JAVA编...
  • zhengshaolong8125
  • zhengshaolong8125
  • 2016年12月17日 10:40
  • 1570

6.1 SikuliX API for scripting

6.1.1控制SikuliX脚本和脚本运行的效果SetShowAction(False|True)如果设置为ture,那么在脚本运行的时候,在每执行一次操作之前(例如单击、输入等)都会在要操作的部位显...
  • pengranxindong
  • pengranxindong
  • 2016年10月31日 17:05
  • 1208

【图形化编程软件】 sikuli常用函数、简单事件操作 键盘操作 个人总结笔记

sikuli函数、简单事件操作个人总结笔记   作者:stormwy 网址:http://blog.csdn.net/stormwy/article/details/7955137 ...
  • stormwy
  • stormwy
  • 2012年09月07日 14:48
  • 22036

SikuliX 源代码 java

  • 2013年08月29日 14:56
  • 73KB
  • 下载

SikuliX 1.1.0 Beta从安装到测试框架(1)

SikuliX 1.1.0 Beta从安装到测试框架     安装前准备 1.      支持系统 Sikulix可以在以下系统上使用: l  Windows XP – win...
  • yxder
  • yxder
  • 2014年06月05日 15:40
  • 1516

SikuliX和Mobizen的andriod功能自动化测试

SikuliX和Mobizen的andriod功能自动化测试Sikuli X下载地址:http://www.sikuli.org/SikuliX的安装稍微有点复杂,需要先从官网下载页面下载安装引导的j...
  • chenlei_525
  • chenlei_525
  • 2016年05月12日 11:15
  • 592

sikulix——ocr

ocr的意思是识别图片中的文字,目前国内的话,有百度ai提供的服务,但是是收费的。国外有开源的tesseract。sikulix上帝之眼也支持ocr,底层是tesseract的实现。这两者都是免费的。...
  • guduyishuai
  • guduyishuai
  • 2017年10月24日 17:11
  • 209
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java整合Sikuli和Asprise.OCR实现桌面自动化
举报原因:
原因补充:

(最多只允许输入30个字)