IPM e2e
This library implements the usual functions that we'll need to write end to end tests.
It offers a functional api that performs programmatically the usual interactions with the graphical interface, on behalf of a human user.
In order to do its job, this library uses the at-spi api, so the corresponding service must be available and the applications under test must implement this api.
Features
- High level, interaction-oriented api
Installation
pip install ipm_e2e
Dependencies (no python)
This library depends on several services and libraries, mainly c code, that cannot be installed using pip:
-
AT-SPI service
-
GObject introspection libraries
-
Assistive Technology Service Provider Interface - shared library
-
Assistive Technology Service Provider (GObject introspection)
You should use your system's package manager to install them. The installation process depends on your system, by example, for a debian distro:
$ sudo apt install at-spi2-core gir1.2-atspi-2.0
Note that, if you're using Gnome, some of these packages are already installed.
Dependencies (python)
This library depends on the following python library:
- Python 3 bindings for gobject-introspection libraries
That python3-gi
library itself depends on some libraries like
gir1.2-glib-2.0
, gir1.2-atspi-2.0
, ... If you've installed them
using your system's package manager, the safe bet would be to do the
same for this one. By example:
$ sudo apt install python3-gi
Dependencies (virtual environment)
If you're using a virtual environment, probably you'll prefer not to
manually install/compile the non-python libraries, neither use the
system-site-packages
option. Instead of that, it's easier to install
vext
:
$ pip install vext vext.gi
, or pygobject
:
$ pip install pygobject
Documentation
The documentation is available at readthedocs.
Support
Please open an issue for support.
License
The project is licensed under the LGPL license.