= Trac Functional Tests = Functional tests are integrated in the test suite (see TracDev/UnitTests). For detailed informations about functional tests, see: - source:trunk/TESTING-README, - source:trunk/doc/dev/testing.rst (more recent) == Dependencies == * [http://twill.idyll.org/ twill] * [http://codespeak.net/lxml/ lxml] Those packages can be installed with `easy_install`: {{{ easy_install twill easy_install lxml }}} On Windows, better download [http://users.skynet.be/sbi/libxml-python/ an installer for lxml]. In addition, you'll need [http://carey.geek.nz/code/python-fcrypt/ fcrypt], otherwise you'll get the following error when running the tests: {{{ "Exception: Unable to setup admin password" }}} To run the functional tests, execute: {{{ PYTHONPATH=. python ./trac/tests/functional/__init__.py }}} or: {{{ make functional-test }}} (only for 0.12 - Trac 0.11 has no Makefile) When using Python 2.3 on the 0.11-stable branch, you'll need to extract attachment:244-for-23.zip somewhere and extend your PYTHONPATH with this `244-for-23` folder. It contains code borrowed from Python 2.4.4, adapted a bit so that it works with Python 2.3. == !Discussion/Future == Something to consider here: using twill's wsgi_intercept capability, and making these part of the unittests.