robotframework-remotesikulilibrary

A Robot Framework library + Java-agent for for Sikuli based UI testing

License

License

GroupId

GroupId

com.github.hi-fi
ArtifactId

ArtifactId

remotesikulilibrary
Last Version

Last Version

0.0.4
Release Date

Release Date

Type

Type

jar
Description

Description

robotframework-remotesikulilibrary
A Robot Framework library + Java-agent for for Sikuli based UI testing
Project URL

Project URL

https://github.com/hi-fi/remotesikulilibrary
Source Code Management

Source Code Management

https://github.com/hi-fi/remotesikulilibrary

Download remotesikulilibrary

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.hi-fi/remotesikulilibrary/ -->
<dependency>
    <groupId>com.github.hi-fi</groupId>
    <artifactId>remotesikulilibrary</artifactId>
    <version>0.0.4</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.hi-fi/remotesikulilibrary/
implementation 'com.github.hi-fi:remotesikulilibrary:0.0.4'
// https://jarcasting.com/artifacts/com.github.hi-fi/remotesikulilibrary/
implementation ("com.github.hi-fi:remotesikulilibrary:0.0.4")
'com.github.hi-fi:remotesikulilibrary:jar:0.0.4'
<dependency org="com.github.hi-fi" name="remotesikulilibrary" rev="0.0.4">
  <artifact name="remotesikulilibrary" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.hi-fi', module='remotesikulilibrary', version='0.0.4')
)
libraryDependencies += "com.github.hi-fi" % "remotesikulilibrary" % "0.0.4"
[com.github.hi-fi/remotesikulilibrary "0.0.4"]

Dependencies

compile (7)

Group / Artifact Type Version
commons-io : commons-io jar 2.5
com.github.ombre42 : jrobotremoteserver jar 3.0
com.sikulix : sikulixapi jar 1.1.0
org.apache.xmlrpc : xmlrpc-client jar 3.1.3
org.robotframework : javalib-core jar 1.2.1
net.sourceforge.tess4j : tess4j jar 3.2.1
org.imgscalr : imgscalr-lib jar 4.2

test (3)

Group / Artifact Type Version
junit : junit jar 4.12
org.powermock : powermock-module-junit4 jar 1.6.5
org.powermock : powermock-api-mockito jar 1.6.5

Project Modules

There are no modules declared in this project.

Remote Sikuli Library for Robot Framework

Introduction

Robot framework library to utilize Sikuli's UI testing capabilities either remotely or locally.

  • More information about this library can be found in the Keyword Documentation.
  • For keyword completion in RIDE you can download this Library Specs and place it in your PYTHONPATH.

Usage

If you are using the robotframework-maven-plugin you can use this library by adding the following dependency to your pom.xml:

<dependency>
    <groupId>com.github.hi-fi</groupId>
    <artifactId>remotesikulilibrary</artifactId>
    <version>0.0.4</version>
</dependency>

With Gradle, library can be use by importing it as a dependency in build.gradle. Because of Sikuli's own pom-file, dependencies have to be introduces following way:

switch(System.getProperty('os.name').toLowerCase().split()[0]) {
    case 'windows':
        compile group: 'com.sikulix', name: 'sikulixlibswin', version: '1.1.0'
        break
    case 'linux':
        compile group: 'com.sikulix', name: 'sikulixlibslux', version: '1.1.0'
        break
    case 'mac':
        compile group: 'com.sikulix', name: 'sikulixlibsmac', version: '1.1.0'
        break
    default:
        throw new Exception('Unknown OS')
}
runtime('com.github.hi-fi:remotesikulilibrary:0.0.4') {
    exclude module: '${sikulix.libs}'
}

Library import in Robot tests can be done with:

*** Settings ***
Library RemoteSikuliLibrary

Example

Usage examples can be found at Tests-folder.

Demo can be run by cloning this repository and running acceptance tests with Maven:

mvn verify

Demo uses own simple Swing application, which is included in tests.

Notes

Debug-level logging is quite exhaustive at remote calls, because base64 encoded images are written to logs, too.

Versions

Version
0.0.4
0.0.3
0.0.2
0.0.1