Skip to main content

Cross-platform Robot Framework library for GUI automation based on image recognition

Project description

This Robot Framework library provides the facilities to automate GUIs based on image recognition similar to Sikuli. This library wraps pyautogui to achieve this.

For non pixel perfect matches, there is a feature called confidence level that comes with a dependency OpenCV (python package: opencv-python). This functionality is optional - you are not required to install opencv-python package if you do not use confidence level.

Keyword documentation

Keyword Documentation

Travis CI

Travis CI

https://travis-ci.org/Eficode/robotframework-imagehorizonlibrary.svg?branch=master

Prerequisites

On Ubuntu, you need to take special measures to make the screenshot functionality to work correctly. The keyboard functions might not work on Ubuntu when run in VirtualBox on Windows.

Development

Installation

If you have pip, installation is straightforward:

$ pip install robotframework-imagehorizonlibrary

This will automatically install dependencies as well as their dependencies.

Windows

ImageHorizonLibrary should work on Windows “out-of-the-box”. Just run the commands above to install it.

OSX

NOTICE ImageHorizonLibrary does not currently work with XCode v.8. Please use a previous version.

You additionally need to install these for pyautogui:

$ pip install pyobjc-core pyobjc

For these, you need to install XCode

Linux

You additionally need to install these for pyautogui:

$ sudo apt-get install python-dev python-xlib

You might also need, depending on your Python distribution, to install:

$ sudo apt-get install python-tk

If you are using virtualenv, you must install python-xlib manually to the virtual environment for pyautogui:

$ pip install python-xlib-<latest version>.tar.gz

Running unit tests

$ python tests/utest/run_tests.py [verbosity=2]

Running acceptance tests

Additionally to unit test dependencies, you also need OpenCV, Eel, scrot and Chrome/Chromium browser. OpenCV is used because this tests are testing also confidence level. Browser is used by Eel for cross-platform GUI demo application. scrot is used for capturing screenshots.

::

$ pip install opencv-python eel

To run tests, run this command:

$ python tests/atest/run_tests.py

Updating Docs

To regenerate documentation (doc/ImageHorizonLibrary.html), use this command:

$ python -m robot.libdoc -P ./src ImageHorizonLibrary doc/ImageHorizonLibrary.html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

robotframework-imagehorizonlibrary-1.0.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

robotframework_imagehorizonlibrary-1.0-py2.py3-none-any.whl (16.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file robotframework-imagehorizonlibrary-1.0.tar.gz.

File metadata

  • Download URL: robotframework-imagehorizonlibrary-1.0.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.2

File hashes

Hashes for robotframework-imagehorizonlibrary-1.0.tar.gz
Algorithm Hash digest
SHA256 5a530ca9850565fa679ebca9697de32bd2bd7cff702a12a41efd069918068358
MD5 74f63bbf4b40996c4de789dea493005f
BLAKE2b-256 a99bb79b00b1ac54c5e9c07ef4d0e42b4c88e98fa070d2039823d43aae947ecb

See more details on using hashes here.

File details

Details for the file robotframework_imagehorizonlibrary-1.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for robotframework_imagehorizonlibrary-1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 90edf08601b7d2800b6958486ce4359edf2a666778f27e39fc9020fc8ba4488b
MD5 3b1e9cef3c8eeaec597f7e6ce02267d4
BLAKE2b-256 bf902a88b0af6d6b94851450f89881ead4b173ac3dc79c8ab87ce7c181a4cb8a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page