sikuli 安装
1 简介
官方介绍:
Sikuli脚本自动化,你在屏幕上看到的任何东西。它使用图像识别,识别和控制GUI组件。这是有用的,当有一个GUI的内部或源代码的访问是不容易的。
Sikuli(在墨西哥维乔印第安人的语言里是”上帝之眼”的意思)是由美国麻省理工学院开发的一种最新编程技术,使得编程人员可以使用截图替代代码,从而简化代码的编写流程。从它研究方向上看,是一种编程技术,但是该技术还可以用于进行大规模的程序测试,脚本程序编写使用的是python语言。
简单的说,Sikuli就是可以直接操作截图来进行自动化测试。
2 安装
2.1 Sikuli安装
1) 下载安装包“sikulixsetup-1.1.0.jar”,网址:https://launchpad.net/sikuli/sikulix/1.1.0
2) 将安装包拷贝到安装目录下,如D:\Sikuli1.1
3) 在命令行里运行“Java –jarsikulixsetup-1.1.0.jar”,弹出安装向导:
选第一个和第二个
选择好安装项后,单击[Setup Now]进行安装
4) 在弹出的question...向导框里选择[Yes]下载需要的安装文件
5) 文件正在下载
6) 确认是否下载Jython,单击[Yes]开始下载Jython
如果觉得在线下载不方便,可以在安装前去https://launchpad.net/raiman/sikulix2013+/1.1.0将“sikulixlibswin.jar”,“sikulixsetupAPI-1.1.0-forsetup.jar”和sikulixsetupIDE-1.1.0-forsetup.jar下载好,并和sikulixsetup-1.1.0.jar放到同一目录(例如:D:\Sikuli1.1)下,这样在安装过程中,Sikuli会自动检测是否有下载好的jar包,如果有它会直接使用已下载好的jar包
7) 文件下载好后,会显示如下信息,并开始安装
8) 安装完成的提示:
9) 安装成功的提示:
此时,SikuliX安装成功并可以使用了
10) 安装完成后安装目录D:\Sikuli1.1下应该有5个文件:
runsikulix.cmd
sikulix.jar
SikuliX-1.1.0-SetupLog.txt
sikulixapi.jar
sikulixsetup-1.1.0.jar
sikulixsetup-1.1.0.jar是刚才的安装包;runsikulix.cmd用来启动SikuliIDE;sikulix.jar是IDE需要的jar包;SikuliX-1.1.0-SetupLog.txt是安装日志;sikulixapi.jar是Java api
2.2 jpype库安装
jpype的作用是在python中调用Sikuli的api java库。
可以到https://pypi.python.org/pypi/JPype1下载库,直接安装
3 Sikuli IDE
打开Sikuli安装目录中的runsikulix.cmd,直接打开sikuli IDE:
如图,sikuli IDE的操作非常简单明了,直接按照提示进行操作就好了。
但是这跟selenium-IDE一样,只能作为demo代码,所以需要把sikuli集成到我们的UI自动化框架中
4 Python Sikuli
Sikuli库是用java编写的,打包成Jar,要在python中使用,需要使用jpype进行转换。
Python中调用sikuli的demo如下:
# coding=utf-8
from jpype import *
startJVM(r'C:\ProgramFiles\Java\jre1.8.0_111\bin\server\jvm.dll', '-ea', r'-Djava.class.path=D:\sikuli\sikulixapi.jar')
# shutdownJVM()
App = JClass('org.sikuli.script.App')
Screen = JClass('org.sikuli.script.Screen')
screen = Screen()
参考:http://blog.csdn.net/a23764996/article/details/53541047
python安装jpype会遇到问题:
参考:
http://blog.csdn.net/linshiyx/article/details/51699163
http://blog.csdn.net/a23764996/article/details/53541047
https://www.cnblogs.com/monsteryang/p/6498690.html
貌似robot framework 可以集成sikuli
sikuli 安装的更多相关文章
- 1.1 sikuli 安装
JRE7不支持sikuli,必须下载JRE6 更新号必须大于35 sikuli下载: http://www.cr173.com/soft/52775.html 或参照 http://www.cnb ...
- 【转载】Sikuli安装及使用——基于图像识别自动化工具
一.Sikuli能做什么? 用屏幕截图的方式,用截出来的图形元素组合出神奇的程序实现自动化安装.卸载软件,自动化测试(Windows.mac应用测试,Web测试,移动端测试) 二.安装Sikuli 预 ...
- [Sikuli] Sikuli安装
http://blog.csdn.net/defectfinder/article/details/49819215 1.下载 sikulixsetup-1.1.0.jar (md5, sig) ht ...
- Sikuli 安装使用之初体验(为Sikuli X指定jre路径)
Sikuli 是一种新颖的图形脚本语言,在实际的自动化测试中如果仅仅依靠selenium 还是远远不够的,selenium自动化本身是存在着诸多缺陷的,基于浏览器之外的控件 (windows 控件 等 ...
- selenium结合最新版的sikuli使用
sikuli安装,下载sikulixsetup-1.1.0.jar,地址:https://launchpad.net/sikuli/sikulix/1.1.0 在装有Java环境的机器上直接双击jar ...
- RF+Selenium2Library+Sikuli集成环境搭建
Sikuli是通过截图来编写代码的脚本语言,他是对于Selenium不好处理的一些模态窗口.flash等的利器.废话少说,直接开始安装吧.安装RF+Selenium2Library的环境这里就不说了, ...
- Sikuli:创新的图形化编程技术
Sikuli是一种使用截图进行UI自动化测试的技术.Sikuli包括sikul脚本,基于Jython的API以及sikuli IDE.Sikuli可以实现任何你可以在显示器上看到ui对象的自动化,你可 ...
- 8.1 sikuli报错: 提示没有对应的javaw
对于sikuli,需要安装32位的jdk且不能高于1.7的版本. 对于64位系统的C盘,Program Files文件夹是64位的,Program File(x86)文件夹是32位的 需要安装一个32 ...
- 基于Sikuli GUI图像识别框架的PC客户端自动化测试实践
写在前面 最近两天,公司有个PC客户端的测试任务,除了最基础的功能测试外,还包括稳定性测试和兼容性测试需求.刚好去年接触过Sikuli这款基于GUI图像识别框架的自动化测试工具,于是便应用于测试工作中 ...
随机推荐
- 《Python》 基础数据类型和for循环
一.基础数据类型 总览 int:用于计算,计数,运算等.1.2.3.100... str:‘这些内容’,用于少量数据的存储,便于操作. bool:True,False,两种状态,机器反馈给用户的对,错 ...
- vsftpd配置虚拟用户为登录用户02
1.安装vsftpd 安装依赖包: yum -y install pam pam-devel db4 de4-devel db4-uitls db4-tcl 新建vsftpd系统用户: #建立Vsft ...
- CUDA ---- Branch Divergence and Unrolling Loop
Avoiding Branch Divergence 有时,控制流依赖于thread索引.同一个warp中,一个条件分支可能导致很差的性能.通过重新组织数据获取模式可以减少或避免warp diverg ...
- STL标准库-Move对容器效率的影响
技术在于交流.沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 C++11新增move()语法(我暂时交错右值引用),在前面我有一篇文章叫 C++11_右值引用 简单的介绍了右值引用类的实现, ...
- python @修饰符的几种用法
http://www.360doc.com/content/17/0715/16/10408243_671545922.shtml http://www.cnblogs.com/Egbertbaron ...
- Dll封装dll,并且调用该封装的dll
按照图1,2,3创建一个默认的(可以导出符号的dll项目) 默认创建的,很好地给我们说明了怎么导出 变量,导出函数,导出类 注意这里加入你要导出的函数的声明 WIN32PROJECT1_API int ...
- 简单shell实现局域网IP扫描
#!/bin/bash network=$1 time=$(date +%H%M%S) for i in $(seq $2 $3) do ping -c 1 -w 2 $network.$i > ...
- 第三篇 makefile的伪目标
我们来思考一下makefile中的目标究竟是什么?实际上,在默认情况下: 1.make将makefile的目标认为是一个文件: 2.make解释器比较目标文件和依赖文件的新旧关系,决定是否 ...
- hdu2085-2086
hdu2085 模拟 #include<stdio.h> ][]; void fun(){ a[][]=; a[][]=; ;i<=;i++){ a[i][]=*a[i-][]+*a ...
- C条件编译
#include <stdio.h> void main() { #ifdef AAA printf("find AAA defined\n"); #else prin ...