简介:Sikuli 是一种新颖的图形脚本语言,或者说是一种另类的自动化测试技术。它与我们常用的自动化测试技术(工具)有很大的区别。

关于配置,一直是一个问题,下面做个总体介绍,用sikuli也有几个月时间了,是时候做个备忘.

技术难点:怎么用maven+sikuli做个组合?

http://mvnrepository.com/artifact/org.sikuli maven仓库里只有四个jar包,sikuli的核心jar包script包没有,这应该怎么办?

先把pom.xml贴出来:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.</modelVersion> <groupId>com.infomorrow.clientdetect</groupId>
<artifactId>clientdetect</artifactId>
<version>0.0.-SNAPSHOT</version>
<packaging>jar</packaging> <name>clientdetect</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-</project.build.sourceEncoding>
</properties> <dependencies>
<!-- sikuli -->
<dependency>
<groupId>org.sikuli</groupId>
<artifactId>sikuli-core</artifactId>
<version>1.1.</version>
</dependency>
<dependency>
<groupId>org.sikuli</groupId>
<artifactId>sikuli-api</artifactId>
<version>1.1.</version>
</dependency>
<dependency>
<groupId>org.sikuli</groupId>
<artifactId>sikuli-webdriver</artifactId>
<version>1.0.</version>
</dependency>
<dependency>
<groupId>org.sikuli</groupId>
<artifactId>sikuli-script</artifactId>
<version>1.1.</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

建立这个项目后,你会发现有报错,说sikuli-script包找不到。

所以这个时候应该把sikuli-script jar包找到,sikuli-ide里有此包,下载地址为http://www.sikuli.org/downloadrc3.html

直接下载sikuli-ide,地址https://launchpad.net/sikuli/sikulix/x1.0-rc3/+download/Sikuli-X-1.0rc3%20%28r905%29-win32.exe

顺便看下sikuli支持的环境:

This Information is for the previous version Sikuli Script X-1.0rc3

On the DOWNLOAD page from the menu you get information on the new version SikuliX-1.0  (May 2013)
 

 

 

Windows

Only 32-bit version is provided. But this version should run on both 32-bit and 64-bit Windows systems.

Prerequisites:

  1. Make sure you have installed the official Sun Java 6 JRE 32-bit version (Java 7 or 64-bit are not supported).
  2. Make sure you have uninstalled all previous versions of Sikuli (especially 0.10.x versions).
  3. Make sure you have restarted your system after you installed JRE and uninstalled old Sikuli installations.

只支持32位的jdk 1.6,不支持jdk 1.7和64位的jdk,这里我用的是jdk 1.7 32位测试是没有问题的。64位win7和32位win7测试都是没有问题的。

下载好.exe文件以后,安装一下,然后把C:\Program Files\Sikuli X\sikuli-script.jar拷到C:\Users\Administrator\.m2\repository\org\sikuli\sikuli-script\1.1.0\下面改名称为sikuli-script-1.1.0.jar,这样maven就不会报错了。伪装一下,maven只会有黄色的提示信息,但不再报错。

然后写个简单的例子:

C盘下自己随便找个图片,然后运行一下下面的例子

import org.junit.Test;
import org.sikuli.script.FindFailed;
import org.sikuli.script.Screen; public class test {
@Test
public void testee() throws FindFailed{
Screen s = new Screen();
s.click("C:\\logo.png");
}
}

不出意外会报错,Getting the VisionProxy.dll: Can not find dependent libraries 就是说找不到.dll文件,如果你没有安装.net framework 4.0(或4.5)安装下,看还会不会报错,这个时候你到

相关目录下去找.dll,是可以找得到的,蛋疼吧?怎么解决这个问题?

截取网站上一解决方法:

链接地址为:http://stackoverflow.com/questions/9568612/sikuli-windows-7-64-bit-getting-the-visionproxy-dll-can-not-find-dependent-li

  1. You must use a 32bit JRE version (I use jre-7u4-windows-i586.exe)
  2. Download Sikuli IDE for Windows (I use "Sikuli X r930", portable version)
  3. Unpack it and copy files to your project folder (I renamed it to "sikuli-ide", check image )
  4. Add sikuli-script.jar to the Referenced Libraries (Project > Properties > Java Build Path > Libraries, check image )
  5. Set PATH and SIKULI_HOME environment vars (Run > Run Configurations > Environment, check image )
  6. You're ready to go ;)

这个方法是可以解决问题,但如果你想搞自动化不可能每个程序都重设一下enviroment吧?那就这样吧,检查一下你的环境变量,

这个是你安装sikuli时就有的,既然已经配置了为什么还不行?

1)重启一下你的电脑说不定再试的时候就好了,我的就是这种情况。

2)但并不是每个重启后都是这样,那么这个时候就要注意了,重启电脑---》右键以管理员身份运行eclipse,再运行下程序就行了。

3)再不行你就就注意把sikuli_home,path里的内容移动到系统变量里,这样每个用户都可以使用了,成功解决权限问题。

sikuli运行确实会有权限方面的问题。

如果还遇到问题,欢迎留言,我会及时回答。

java+win7+eclipse+Maven+sikuli 配置总结---图形脚本语言的更多相关文章

  1. Java win7或 xp下配置JDK环境变量

    JAVA win7或 xp下配置JDK环境变量 by:授客 QQ:1033553122 1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08 ...

  2. SiKuli 图形脚本语言【转载】

    Sikuli 是一种新颖的图形脚本语言,或者说是一种另类的自动化测试技术.它与我们常用的自动化测试技术(工具)有很大的区别. 当你看到上图sikuli的脚本时,一定会惊呼,这样都可以~!脚本加截图~~ ...

  3. eclipse maven安装配置

      下载在Apache下载Maven,下载地址:http://maven.apache.org/download.html,在win7下载文件为:apache-maven-3.1.0-bin.zip. ...

  4. java web: eclipse & maven & jetty & struts2 & mysql = 简单登录页面

    第一次接触java web开发,花费了一天半的时间,写了个简单的登录页面,以此文为记. 开发工具 Eclipse Luna Release (4.4.0) 已集成maven,maven目前的体会就是管 ...

  5. eclipse + maven 环境配置

    软件152 余建强 第一步:准备以下软件并进行安装 1. jdk1.7或者以上为最佳: 官方下载地址:http://www.oracle.com/technetwork/java/javase/dow ...

  6. eclipse Maven plugin 配置

    1. eclipse -> help -> marketpalce -> search 在输入框中输入Maven,回车. 在搜索结果列表中往下拉几个安装 Maven Integrat ...

  7. Eclipse + Maven 安装配置

    1. 下载 http://maven.apache.org/download.cgi 2. 解压 3. 配置环境变量 MAVEN_HOME = D:\Software\apache-maven-3.5 ...

  8. 使用Eclipse+Maven+Jetty构建Java Web开发环境(几个教程综合集成2014发行)

    工作需要使用Jetty由于web集装箱,得知Eclipse+Maven+Jetty该组合是非常好的,因此,要在网上找了很多教程,但不写或多或少特定的或过时的内容而导致最终的配置失败,易于配置为未来的同 ...

  9. 用Eclipse+Maven+Jetty构建Java Web开发环境(详细笔记)

    (软件环境) 『系统』Windows 10 x64 『JAVA』JDK 1.8.0_91 『Eclipse』 Eclipse-oxygen 『Maven』 apache-maven-3.6.3 『Je ...

随机推荐

  1. jquery的$.extend和$.fn.extend作用及区别,兼它们的一些小细节

    $.extend(obj);是为了扩展jquery本身,为类添加新的方法   $.fn.extend(obj);给JQUERY对象添加方法.如(1): $.extend({ add:function( ...

  2. NLP资源

    http://www.cs.columbia.edu/~mcollins/notes-spring2013.html http://web.stanford.edu/class/cs224n/syll ...

  3. 强制开启android webview debug模式使用Chrome inspect

    强制开启android webview debug模式使用Chrome inspect https://blog.csdn.net/zhulin2609/article/details/5143782 ...

  4. 以sb7code为基础创建一个基本的OpenGL项目

      以sb7code为基础创建一个基本的OpenGL项目   从github上面下载sb7code代码: https://github.com/openglsuperbible/sb7code 打开H ...

  5. C++ 容器元素的存储和获取

    1.存储对象,存储的是对象的副本,并不是原对象.2.获取对象,获取的是对象的引用,为什么要这样设计?a.存储对象只发生一次,而获取对象往往会有多次,获取对象,如果每次都返回对象的副本,这个开销很大.b ...

  6. git Alias 设置

    git Alias 设置 Git 使用比較多的话能够设置一些命令的 Alias ,简单的说就是用简写取代整个完整的命令. 如co 代表 checkout. Mac下,到根文件夹 cd ~ 然后 vi ...

  7. iOS编程(双语版)-视图-Frame/Bounds/Center

    1. Frame 每个视图都有一个frame属性,它是CGRect结构,它描述了视图所在的矩形在其父视图中的位置. (屏幕坐标系默认的原点在左上角,x轴向右伸展,y轴向下伸展) 设置frame通常通过 ...

  8. 很好的vmware目录

    http://www.globalknowledge.com/training/course.asp?pageid=9&courseid=18023&country=United+St ...

  9. 树莓派中GPIO针角定义图

    一.上图 二.上图

  10. 忘记MySQL root密码重置MySQL root密码

    (1)停止mysql# /etc/init.d/mysql stop(2)以不检查权限的方式启动# mysqld --skip-grant-tables &(3)登录mysql修改root用户 ...