Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/telefonica/toolium

Wrapper tool of Selenium and Appium libraries to test web and mobile applications in a single project
https://github.com/telefonica/toolium

cdco dir-cto org-cdo srv-qa

Last synced: 1 day ago
JSON representation

Wrapper tool of Selenium and Appium libraries to test web and mobile applications in a single project

Awesome Lists containing this project

README

        

Toolium
=======

|Build Status| |Coverage Status| |CodeClimate| |Documentation Status|

Toolium is a Python wrapper tool of Selenium and Appium libraries to test web and mobile applications in a single
project. It provides a way of choosing and configuring the driver through a configuration file, implements a Page Object
pattern and includes a simple visual testing solution.

.. |Build Status| image:: https://github.com/Telefonica/toolium/workflows/build/badge.svg?branch=master
:target: https://github.com/Telefonica/toolium/actions?query=branch%3Amaster
.. |Documentation Status| image:: https://readthedocs.org/projects/toolium/badge/?version=latest
:target: http://toolium.readthedocs.org/en/latest
.. |Coverage Status| image:: https://coveralls.io/repos/Telefonica/toolium/badge.svg?branch=master&service=github
:target: https://coveralls.io/github/Telefonica/toolium?branch=master
.. |CodeClimate| image:: https://api.codeclimate.com/v1/badges/3e5773b2e5272b546f8a/maintainability
:target: https://codeclimate.com/github/Telefonica/toolium/maintainability

Getting Started
---------------

Run ``pip install toolium`` to install the latest version from `PyPi `_. It's
highly recommendable to use a virtualenv.

The main dependencies are:

- `Selenium `_: to test web applications in major browsers (Firefox, Chrome, Internet
Explorer, Edge or Safari)
- `Appium-Python-Client `_: to test mobile applications (native, hybrid or web)
in Android or iOS devices/emulators.
- `requests `_: to test APIs

You might need to adjust the Selenium and Appium-Python-Client versions in your project.
In that case follow the `compatibility matrix `_

**Using toolium-template**

The easiest way of getting started is to clone `toolium-template `_
project, run the example test and add your own tests and configuration.

.. code:: console

$ git clone [email protected]:Telefonica/toolium-template.git
$ cd toolium-template
$ pip install -r requirements.txt

Now, just follow `toolium-template instructions `_ to know
how to start your testing project.

**Running toolium-examples**

You can also clone `toolium-examples `_ to get more examples about how
to use the library to test web, Android or iOS applications, in different scenarios.

.. code:: console

$ git clone [email protected]:Telefonica/toolium-examples.git
$ cd toolium-examples
$ pip install -r requirements.txt

Now, just follow `toolium-examples instructions `_ to run
the examples of the tests.

Contributing
------------

If you want to collaborate in Toolium development, feel free of `forking it `_
and asking for a pull request.

Don't forget to run unit tests:

.. code:: console

$ git clone [email protected]:/toolium.git
$ cd toolium
$ pip install -r requirements.txt
$ pip install -r requirements_dev.txt
$ python -m pytest

Finally, before accepting your contribution, we need you to sign our
`Contributor License Agreement `_
and send it to [email protected].

Main Features
-------------

- `Choosing driver through a configuration file `_
- `Page Object pattern `_
- `BDD integration `_
- `Visual testing solution `_
- `Tests result analysis `_

Documentation
-------------

Further information about features and fixes included in each release: `CHANGELOG `_.

Complete library reference and documentation available at `ReadTheDocs `_.