robotframework+selenium+sikuli做ui自动化测试

 一、原理            

 

  • This library is implemented with Robot Framework Remote Library
  • Sikuli api is encapsulated as Robot keywords, and explored to clients with jrobotremoteserver
  • Client is implemented with python and use Robot remote library to communicate with server side
  • Users could implement their own clients with different languages which support xml rpc

二、使用步骤:

步骤1:先安装robotframework-SikuliLibrary

分为两种方式在线安装:pip Install  robotframework-SikuliLibrary

离线安装,需要下载好  robotframework_SikuliLibrary-1.0.8-py2.py3-none-any.whl

然后输入命令 pip install robotframework_SikuliLibrary-1.0.8-py2.py3-none-any.whl

安装成功

步骤2:需要打开jrobotremoteserver 才可以使用

C:\Python27\Lib\site-packages\SikuliLibrary\lib>java -jar SikuliLibrary.jar 8270

 

这里指定一个端口如8270端口即可

 

然后打开浏览器,输入网址http://localhost:8270/

可以发现远程server已经打开

这样程序就可以打开 self.start_sikuli_java_process()不会报如下错误了,因为sikuli是java语言写的,不能通过rf直接调用jar

 

[ERROR] Error in file:'D:\SikuliTest.txt':Initalizing test library 'SikuliLibrary' with no arguments failed:Windows Error:[ERROR 267]

Traceback(most recent call last):

     File "C:\Python 27\lib\site-packages\SikuliLibrary\sikuli.py",line 50 in __init__

     self.start_sikuli_process(port)

     File "C:\Python 27\lib\site-packages\SikuliLibrary\sikuli.py",line 77,in start_sikuli_process

     self.start_sikuli_java_process()

     File "C:\Python 27\lib\site-packages\SikuliLibrary\sikuli.py",line 162,in start_sikuli_java_process

        stderr=self._err_file()

     File "C:\Python 27\lib\site-packages\robot\libraries\Process.py",line 355,in start_process

     process=subprocess.pOpen(executable_command.,**config.full_config) 

     File "C:\Python 27\lib\subprocess.py",line 394,in __init__

  errread,errwrite)

    File "C:\Python 27\lib\subprocess.py",line 664,in __execute_child

 startupinfo)

 

步骤三:(也可以不用设置,我这里也可以跑成功)

User could use different clients to connect to server and call keywords

Library        Remote        http://<ip>:<port>/

 

Library   Remote    http://localhost:8270/

 

步骤4:开始我们的脚本之旅

*** Settings ***

Suite Setup

Library           Selenium2Library

Library           SikuliLibrary

 

*** Test Cases ***

打开浏览器点击更多产品

    Open Browser    http://www.baidu.com    gc

    Click    C:\\Python27\\Scripts\\sikuli_captured\\更多产品.png

运行后,会出现找不到图片的错误

 

从官网上查了下原因,发现是截屏软件的原因,需要用sikuliIde里的截屏工具才可以识别。

步骤4:安装sikuliIde环境

双击sikulix.jar,一路默认,在线安装

sikulixlibswin-1.1.1.jar

sikulixsetupIDE-1.1.3-20180711.082119-40-forsetup.jar (IDE/Scripting)

sikulixsetupAPI-1.1.3-20180711.082046-40-forsetup.jar (Java API)

 

双击runsikulix.cmd

安装成功后打开可视化窗口进行截屏,截屏成功后,把图片保存在图片的路径下,再次运行程序,运行成功

Ps:要注意在使用Click的时候,有时候会提示使用Selenium2Library.Click还是SikuliLibrary.Click.,选择SikuliLibrary.Click.即可。

 

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值