README.rst 2.6 KB
Newer Older
1 2 3
Avocado Test Framework
======================

4 5 6
Avocado is a test framework that is built on the experience accumulated with
`autotest <http://autotest.github.io/>`__, while improving on its weaknesses
and shortcomings.
7

8 9
The main goal of the Avocado project is to provide a set of smart tools for
automated testing and continuous integration. Among them, we can highlight:
10

11 12 13 14 15 16 17 18 19 20
- A powerful test runner;
- A multiplexer that allows tests to be run with different sets of variables;
- Test APIs for test writers;
- A database for results, with a web interface;
- A scheduler for setting up a test grid.

An `extensive set of slides about avocado
<https://docs.google.com/presentation/d/1PLyOcmoYooWGAe-rS2gtjmrZ0B9J22FbfpNlQY8fIUE>`__,
including details about its architecture, main features and status is available
in google-drive.
21 22 23 24

Using avocado
-------------

25 26 27 28 29 30 31 32 33 34 35
The most straightforward way of `using` avocado is to install packages
available for your distro:

1) Fedora

   To use the latest version of avocado, or to use it while it's not officially
   packaged in Fedora yet, you should use `Avocado's copr repository
   <http://copr.fedoraproject.org/coprs/lmr/Autotest/>`__.

Once you install it, you can start exploring it by checking the output of
``avocado --help`` and the test runner man-page, accessible via ``man avocado``.
36

37 38
If you want to `develop` avocado, or run it directly from the git repository,
you have a couple of options:
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53

1) The avocado test runner was designed to run in tree, for rapid development
   prototypes. Just use::

    $ scripts/avocado --help

2) Installing avocado in the system is also an option, although remember that
   distutils has no ``uninstall`` functionality::

    $ sudo python setup.py install
    $ avocado --help

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

54 55 56 57
Avocado comes with in tree documentation about the most advanced features and
its API. It can be built with ``sphinx``, but a publicly available build of
the latest master branch documentation and releases can be seen on `read the
docs <https://readthedocs.org/>`__:
58 59 60

http://avocado-framework.readthedocs.org/

61
If you want to build the documentation yourself:
62 63 64 65 66

1) Make sure you have the package ``python-sphinx`` installed. For Fedora::

    $ sudo yum install python-sphinx

67
2) For Mint/Ubuntu/Debian::
68 69 70 71

    $ sudo apt-get install python-sphinx

3) Optionally, you can install the read the docs theme, that will make your
72
   in-tree documentation look just like the online version::
73 74 75 76 77 78 79 80 81 82

    $ sudo pip install sphinx_rtd_theme

4) Build the docs::

    $ make -C docs html

5) Once done, point your browser to::

    $ [your-browser] docs/build/html/index.html
83