51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

测试开发精英班,通向高级软件测试工程师【周活动】 找茬--心里圈的故事 !【长期招募】博为峰网校招聘兼职讲师!横扫BAT,Python全栈测试开发技能大全
【106期】:如何树立正确使用Python做开发的习惯 【征稿】提交你的测试成绩单! 【专题】用尽一切办法只为让你学好用例 自学软件测试那点事
查看: 2594|回复: 2

如何在java中使用sikuli进行自动化测试

[复制链接]
  • TA的每日心情
    慵懒
    2019-8-9 10:30
  • 签到天数: 496 天

    连续签到: 1 天

    [LV.9]测试副司令

    发表于 2016-10-14 16:29:49 | 显示全部楼层 |阅读模式
    图形脚本语言sikuli


      sikuli IDE可以完成常见的单击、右击、移动到、拖动等鼠标操作,java引用sikuli-script.jar同样可以执行这些常见的鼠标操作,因此即可方便的编写java实现识别图片并模拟点击/拖动目标控件。

    将sikuli-script.jar包添加到eclipse中。

    然后编写自动化测试脚本:
    1. package com.mypro.sikuli;

    2. import org.sikuli.script.*;

    3. public class STest {

    4.     public static void main(String[] args) throws FindFailed, InterruptedException {
    5.         Screen s = new Screen();
    6.         //定义图片存放路径
    7.         String imgpath = "D:/java/sikuli/img/";
    8.         //双击桌面chrome浏览器图标
    9.         s.doubleClick(imgpath+"chrome.png");
    10.         //输入url
    11.         s.type(imgpath+"url.png","www.bing.com");
    12.         s.click(imgpath+"lianxiang.png");
    13.         Thread.sleep(2000);
    14.         //在bing输入框输入搜索关键字:sikuli,并点击搜索按钮
    15.         s.type(imgpath+"sreach_input.jpg","sikuli");
    16.         s.click(imgpath+"sreach_button.png");
    17.         
    18.         System.out.println("end");
    19.     }
    20. }
    复制代码
    我的图片目录:

    执行日志:
    1. [info] Windows utilities loaded.
    2. [info] Sikuli vision engine loaded.
    3. [log] DOUBLE CLICK on (185,450)
    4. [log] CLICK on (426,206)
    5. [log] TYPE "www.bing.com"
    6. [log] CLICK on (430,239)
    7. [log] CLICK on (685,370)
    8. [log] TYPE "sikuli"
    9. [log] CLICK on (938,371)
    10. end
    复制代码
    如果在执行脚本的时候出现以下错误: Getting the VisionProxy.dll: Can not find dependent libraries...

    把Sikuli X 的libs目录添加到系统环境变量path下:
    1. path:
    2. ;D:\Program Files (x86)\Sikuli X\libs
    复制代码
    什么是Sikuli X? 请参考本文开头的文字链接。

    ----------------------------------------------------

    错误参考:

    http://stackoverflow.com/questio ... t-find-dependent-li

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-3-6 16:56
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]测试营长

    发表于 2016-10-17 12:12:29 来自手机 | 显示全部楼层
    看上去不错的样子,这是做cs架构的客户端的?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2017-1-11 15:30:49 | 显示全部楼层
    请教楼主,java中使用sikuli怎么做页面检查? 我尝试 if (s.exist() ),但是s.exist()是Match类型的 不能用if语句
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2019-9-16 06:34 , Processed in 0.063208 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2019 Comsenz Inc.

    快速回复 返回顶部 返回列表