sikuli-maven,selenium集成环境

原文:http://www.softwaretestinghelp.com/sikuli-tutorial-part-1/

简单介绍一下sikuli:

引用原文:

Sikuli automates anything you see on screen using the image recognition method to identify GUI elements. Sikuli script allows users to automate GUI interaction by using screenshots.

Sikuli 自动化工具通过图像识别方法来自动识别屏幕上每一个可视化的元素,sikuli脚本运行用户通过截图的方式进行自动化测试的交互

(翻译正文从 Let’s start with 1st part in this series.译文为个人在使用过程中,对工具的理解,翻译不准确的地方,欢迎大家指正

我们将了解到一下内容:

本文将介绍哪些内容:

  • Sikuli 简介
  • 使用场景
  • 使用的好处
  • 使用前的环境准备
  • 创建一个sikuli java 项目
  • 常用的sikuli方法
  • 实例
  • sikuli的缺点
1.Sikuli简介
Sikuli是一个使用“可视化的图形匹配”技术的GUI(graphical user interfaces 图形用户界面)自动化测试工具.。在sikuli中,所有的web、桌面应用等界面元素,都被视为可存储的图像元素。Sikuli 通过GUI工具,使用基于可视化的图像匹配技术,触发带参数图像的测试方法

Sikuli对于像Flash这类(没有id和name定义)元素的自动化测试非常有用。它可以使用一些稳定的图像来进行识别。

即使是一些基于window的应用,也可以使用sikuli进行自动化测试。sikuli提供了比较友好的支持包Sikuli-script.jar,通过这个jar包,可以很容易的与Selenium WebDriver 框架整合。我们还可以使用sikuli对 adobe video/audio play, 网页小游戏等进行自动化测试。使用sikuli 提供的API,可以使编码更加简单


2.使用场景
  • Flash 对象、Flash网站的自动化测试
  • 基于windows的应用的自动化测试
  • 提供简单的API,所有的方法都可以通过使用Screen类对象进行访问
  • 很方便的与selenium等其他测试框架整合
  • 使用Sikuli对桌面应用进行自动化测试
  • 许多的测试工具都不支持对Flash对象的自动化测试(例如selenium).sikuli对Flash动画提供了一些扩展的支持
  • 使用强大的“图像匹配”机制对Flash、桌面应用等进行自动化测试

3.选择sikuli的好处

  • 开源
  • 最大的优势是,使Flash对象的自动化测试变得很简单
  • 是windows应用程序的自动化测试变得很简单
  • 如果你要测试一个开发中的应用,但是不知道该应用中的元素的id和name,那么你可以使用sikuli.它会检查出匹配的图像,并通过图像来进行交互

4.前置环境准备,在安装和使用sikuli进行自动化测试之前,需要确保电脑已安装好以下软件

  • 任意一款截图软件
  • JDK
  • Eclipse(或其他集成开发工具)
5.创建一个Sikuli java project的步骤
Step #1:下载安装包,存储到本地磁盘(用户具有读写磁盘的权限)
Step #2:将下载的Zip文件解压到本地磁盘,解压后包含一个sikuli-script.jar文件,将次文件另外进行存储
需要注意的是,官方最新版本下载的安装包不是zip格式的压缩包,而是sikulixsetup-X.X.X.jar,这个文件可以直接安装,安装后会得到一个sikulixapi.jar,此文件是用于java开发的jar包

Step #3:打开Eclipse

Step #4:新建一个java project File --> New --> Java Project

Step #5:

  • 在项目名上右键
  • 进入 Build path --> Configure Build Path
  • 切换到 Libraries 页签
  • 点击【Add External Jars】按钮,然后把 sikulixapi.jar添加到Build path中
  • 点击【Ok】按钮

这样sikulixapi.jar包就被添加到项目中来了。完成后,你就可以开始在项目中编写sikuli的脚本


6.Sikuli提供的一些方法:

#1:创建Screen类对象

Screen是sikuli提供的一个基类,我们需要先创建一个screen对象,然后,通过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("test.png");

#6:检查屏幕是否存在某个元素

s.exists("test.png");

#7:给文本框输入字符串

语法:

s.type("《图像名称》","要输入的文本");

示例:

s.type("test.png","Hi!!")

#8:s.wheel("test.png",25,0);

#9: s.dragDrop("test.png","test1.png");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值