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
Travis CI
Prerequisites
Python 3.x
pip for easy installation
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:
Install with:
$ 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for robotframework-imagehorizonlibrary-1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a530ca9850565fa679ebca9697de32bd2bd7cff702a12a41efd069918068358 |
|
MD5 | 74f63bbf4b40996c4de789dea493005f |
|
BLAKE2b-256 | a99bb79b00b1ac54c5e9c07ef4d0e42b4c88e98fa070d2039823d43aae947ecb |
Hashes for robotframework_imagehorizonlibrary-1.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90edf08601b7d2800b6958486ce4359edf2a666778f27e39fc9020fc8ba4488b |
|
MD5 | 3b1e9cef3c8eeaec597f7e6ce02267d4 |
|
BLAKE2b-256 | bf902a88b0af6d6b94851450f89881ead4b173ac3dc79c8ab87ce7c181a4cb8a |