funq is a tool to write FUNctional tests for Qt applications using python.
It is licenced under the CeCILL v2.1 licence (very close to the GPL v2). See the LICENCE.txt file distributed in the sources for more information.
Tutorial and documentation:
Travis-ci build:
Get funq on PyPi (server and client packages):
funq is divided in two parts:
- funq-server is the server part of the project, composed of an executable called funq and a dynamic library libFunq. The funq executable allows to inject some code in a Qt application to start a TCP server that will allow to interact with the application.
- funq is a python package that offers an API to interact with a libFunq TCP server. It is the client side of the project, and uses nosetests to launch FUNctional Qt tests.
Funq currently only works with python2.7, Qt4, and on GNU/Linux.
It may work under Windows XP and some other versions but this has not been really tested.
There are plans to make it work under windows, support python 3 and also support Qt5. Contributors are welcome to help in these tasks !
You can easily install it from PyPi with pip or setuptools:
pip install funq-server pip install funq
Note
Note that funq-server will need qmake-qt4 to build the C++ part of the server.
Also, if you're not using virtualenv you may have to take root privileges to install funq.
You can instead get the sources and install it with setup.py:
cd server python setup.py install cd ../client python setup.py install
Note
For contributors, you may want to use python setup.py develop instead of python setup.py install commands.
Thanks to Yann De Poulpiquet <[email protected]> and Riad Lezzar <[email protected]> to have contributed by writing the firsts functional tests with funq.
Thanks also to Jean-Luc Rouzoul, Dominique Constant and Mickaël Guérin for having supported this project.
Without them, funq would never have become a free software !