This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

Avocado is a set of tools and libraries to help with automated testing.

One can call it a test framework with benefits. Native tests are written in Python and they follow the unittest (https://docs.python.org/2.7/library/unittest.html) pattern, but any executable can serve as a test.

Avocado is composed of:

Avocado is built on the experience accumulated with Autotest (http://autotest.github.io), while improving on its weaknesses and shortcomings.

Installing Avocado

Installing from Packages

Fedora

Avocado is available in stock Fedora 24 and later. The main package name is python-avocado, and can be installed with:

dnf install python-avocado

Other available packages (depending on the Avocado version) may include:

  • python-avocado-examples: contains example tests and other example files
  • python2-avocado-plugins-output-html: HTML job report plugin
  • python2-avocado-plugins-runner-remote: execution of jobs on a remote machine
  • python2-avocado-plugins-runner-vm: execution of jobs on a libvirt based VM
  • python2-avocado-plugins-runner-docker: execution of jobs on a Docker container

Fedora from Avocado’s own Repo

The Avocado project also makes the latest release, and the LTS (Long Term Stability) releases available from its own package repository. To use it, first get the package repositories configuration file by running the following command:

sudo curl https://repos-avocadoproject.rhcloud.com/static/avocado-fedora.repo -o /etc/yum.repos.d/avocado.repo

Now check if you have the avocado and avocado-lts repositories configured by running:

sudo dnf repolist avocado avocado-lts
...
repo id      repo name                          status
avocado      Avocado                            50
avocado-lts  Avocado LTS (Long Term Stability)  disabled

Regular users of Avocado will want to use the standard avocado repository, which tracks the latest Avocado releases. For more information about the LTS releases, please refer to the Avocado Long Term Stability thread (https://www.redhat.com/archives/avocado-devel/2016-April/msg00038.html) and to your package management docs on how to switch to the avocado-lts repo.

Finally, after deciding between regular Avocado releases or LTS, you can install the RPM packages by running the following commands:

dnf install python-avocado

Additionally, other Avocado packages are available for Fedora:

  • python-avocado-examples: contains example tests and other example files
  • python2-avocado-plugins-output-html: HTML job report plugin
  • python2-avocado-plugins-runner-remote: execution of jobs on a remote machine
  • python2-avocado-plugins-runner-vm: execution of jobs on a libvirt based VM
  • python2-avocado-plugins-runner-docker: execution of jobs on a Docker container

Enterprise Linux

Avocado packages for Enterprise Linux are available from the Avocado project RPM repository. Additionally, some packages from the EPEL repo are necessary, so you need to enable it first. For EL7, running the following command should do it:

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Then you must use the Avocado project RHEL repo (https://repos-avocadoproject.rhcloud.com/static/avocado-el.repo). Running the following command should give you the basic Avocado installation ready:

curl https://repos-avocadoproject.rhcloud.com/static/avocado-el.repo -o /etc/yum.repos.d/avocado.repo
yum install python-avocado

Other available packages (depending on the Avocado version) may include:

  • python-avocado-examples: contains example tests and other example files
  • python2-avocado-plugins-output-html: HTML job report plugin
  • python2-avocado-plugins-runner-remote: execution of jobs on a remote machine
  • python2-avocado-plugins-runner-vm: execution of jobs on a libvirt based VM
  • python2-avocado-plugins-runner-docker: execution of jobs on a Docker container

The LTS (Long Term Stability) repositories are also available for Enterprise Linux. For more information about the LTS releases, please refer to the Avocado Long Term Stability thread (https://www.redhat.com/archives/avocado-devel/2016-April/msg00038.html) and to your package management docs on how to switch to the avocado-lts repo.

OpenSUSE

The OpenSUSE project packages LTS versions of Avocado (https://build.opensuse.org/package/show/Virtualization:Tests/avocado). You can install packages by running the following commands:

zypper install avocado

Debian

DEB package support is available in the source tree (look at the contrib/packages/debian directory. No actual packages are provided by the Avocado project or the Debian repos.

Setting up a Development Environment

If you want to develop Avocado, or just run it directly from the GIT repository, fetch the source code and run:

make develop

From this point on, running avocado should load everything from your current source code checkout.

Brief Usage Instructions

To list available tests, call the list subcommand. For example:

avocado list

INSTRUMENTED <examples_path>/tests/abort.py:AbortTest.test
INSTRUMENTED <examples_path>/tests/canceltest.py:CancelTest.test
...
SIMPLE       <examples_path>/tests/passtest.sh

To run a test, call the run command:

avocado run <examples_path>/tests/passtest.sh
JOB ID     : <id>
JOB LOG    : <job-results>/job-<date>-<shortid>/job.log
(1/1) <examples_path>/tests/passtest.sh: PASS (0.04 s)
RESULTS    : PASS 1 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0 | CANCEL 0
TESTS TIME : 0.04 s

To continue exploring Avocado, check out the output of avocado --help and the test runner man-page, accessible via man avocado.

Documentation

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:

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

If you want to build the documentation yourself:

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

    $ sudo yum install python-sphinx
    
  2. For Mint/Ubuntu/Debian:

    $ sudo apt-get install python-sphinx
    
  3. Optionally, you can install the read the docs theme, that will make your in-tree documentation look just like the online version:

    $ 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
    
Release History

Release History

48.0

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

47.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

46.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

45.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

42.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

41.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

40.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

39.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

37.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

36.4

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

36.3

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

36.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

35.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
avocado-framework-48.0.tar.gz (632.3 kB) Copy SHA256 Checksum SHA256 Source Apr 4, 2017

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting