Skip to content

Releases: avocado-framework/avocado

Avocado release 38.0: Love, Ken

05 Jul 12:42
38.0
Compare
Choose a tag to compare

Hello everyone,

You guessed it right: this is another Avocado release announcement:
release 38.0, aka "Love, Ken", is now out!

Another development cycle has just finished, and our community will
receive this new release containing a nice assortment of bug fixes and
new features.

  • The download of assets in tests now allow for an expiration time.
    This means that tests that need to download any kind of external
    asset, say a tarball, can now automatically benefit from the
    download cache, but can also keep receiving new versions
    automatically.

    Suppose your asset uses an asset named myproject-daily.tar.bz2,
    and that your test runs 50 times a day. By setting the expire time
    to 1d (1 day), your test will benefit from cache on most runs, but
    will still fetch the new version when the the 24 hours from the
    first download have passed.

    For more information, please check out the documentation on the
    expire parameter to the fetch_asset() method[1].

  • Environment variables can be propagated into tests running on remote
    systems. It's a known fact that one way to influence application behavior,
    including test, is to set environment variables. A command line such as::

    $ MYAPP_DEBUG=1 avocado run myapp_test.py

Will work as expected on a local system. But Avocado also allows
running tests on remote machines, and up until now, it has been
lacking a way to propagate environment variables to the remote
system.

Now, you can use::

    $ MYAPP_DEBUG=1 avocado run --env-keep MYAPP_DEBUG \
      --remote-host test-machine myapp_test.py
  • The plugin interfaces have been moved into the
    avocado.core.plugin_interfaces module. This means that plugin
    writers now have to import the interface definitions this namespace,
    example::
    ...
    from avocado.core.plugin_interfaces import CLICmd

    class MyCommand(CLICmd):
    ...

This is a way to keep ourselves honest, and say that there's no
difference from plugin interfaces to Avocado's core implementation,
that is, they may change at will. For greater stability, one should
be tracking the LTS releases.

Also, it effectively makes all plugins the same, whether they're
implemented and shipped as part of Avocado, or as part of external
projects.

  • A contrib script for running kvm-unit-tests. As some people are
    aware, Avocado has indeed a close relation to virtualization
    testing. Avocado-VT is one obvious example, but there are other
    virtualization related test suites can Avocado can run.

    This release adds a contrib script that will fetch, download,
    compile and run kvm-unit-tests using Avocado's external runner
    feature. This gives results in a better granularity than the
    support that exists in Avocado-VT, which gives only a single
    PASS/FAIL for the entire test suite execution.

For more information, please check out the Avocado changelog[2].

Also, while we focused on Avocado, let's also not forget that
Avocado-VT maintains it's own fast pace of incoming niceties.

  • s390 support: Avocado-VT is breaking into new grounds, and now has
    support for the s390 architecture. Fedora 23 for s390 has been added
    as a valid guest OS, and s390-virtio has been added as a new machine
    type.

  • Avocado-VT is now more resilient against failures to persist its
    environment file, and will only give warnings instead of errors when
    it fails to save it.

  • An improved implementation of the "job lock" plugin, which prevents
    multiple Avocado jobs with VT tests to run simultaneously. Since
    there's no finer grained resource locking in Avocado-VT, this is a
    global lock that will prevent issues such as image corruption when
    two jobs are run at the same time.

    This new implementation will now check if existing lock files are
    stale, that is, they are leftovers from previous run. If the
    processes associated with these files are not present, the stale
    lock files are deleted, removing the need to clean them up manually.
    It also outputs better debugging information when failures to
    acquire lock.

The complete list of changes to Avocado-VT are available on its
changelog[3].

While not officially part of this release, this development cycle saw
the introduction of new tests on our avocado-misc-tests. Go check it
out!

Finally, since Avocado and Avocado-VT are not newly born anymore, we
decided to update information mentioning KVM-Autotest, virt-test on so
on around the web. This will hopefully redirect new users to the
Avocado community and avoid confusion.

Install avocado

Instructions are available in our documentation on how to install
either with packages or from source[4].

Updated RPM packages are be available in the project repos for EPEL 6,
EPEL 7, Fedora 22, Fedora 23 and the newly released Fedora 24.

Please note that on the next release, we'll drop support for Fedora 22
packages.

Happy hacking and testing!


[1] http://avocado-framework.readthedocs.io/en/38.0/WritingTests.html
[2] 37.0...38.0
[3] avocado-framework/avocado-vt@37.0...38.0
[4] http://avocado-framework.readthedocs.io/en/38.0/GetStartedGuide.html#installing-avocado

Avocado release 37.0: Trabant vs. South America

14 Jun 08:50
37.0
d5a8d29
Compare
Choose a tag to compare

This is another proud announcement: Avocado release 37.0, aka "Trabant
vs. South America", is now out!

This release is yet another collection of bug fixes and some new
features. Along with the same changes that made the 36.0lts
release[1], this brings the following additional changes:

  • TAP[2] version 12 support, bringing better integration with other
    test tools that accept this streaming format as input.
  • Added niceties on Avocado's utility libraries "build" and "kernel",
    such as automatic parallelism and resource caching. It makes tests
    such as "linuxbuild.py" (and your similar tests) run up to 10 times
    faster.
  • Fixed an issue where Avocado could leave processes behind after the
    test was finished.
  • Fixed a bug where the configuration for tests data directory would
    be ignored.
  • Fixed a bug where SIMPLE tests would not properly exit with WARN
    status.

For a complete list of changes please check the Avocado changelog[3].

For Avocado-VT, please check the full Avocado-VT changelog[4].

Install avocado

Instructions are available in our documentation on how to install
either with packages or from source[5].

Updated RPM packages are be available in the project repos for
Fedora 22, Fedora 23, EPEL 6 and EPEL 7.

Happy hacking and testing!


[1] https://www.redhat.com/archives/avocado-devel/2016-May/msg00025.html
[2] https://en.wikipedia.org/wiki/Test_Anything_Protocol
[3] 35.0...37.0
[4] avocado-framework/avocado-vt@35.0...37.0
[5] http://avocado-framework.readthedocs.io/en/37.0/GetStartedGuide.html#installing-avocado

Avocado 36.0lts Release

17 May 18:19
36.0lts
a794586
Compare
Choose a tag to compare

This is a very proud announcement: Avocado release 36.0lts, our very
first "Long Term Stability" release, is now out!

LTS in a nutshell

This release marks the beginning of a special cycle that will last for
18 months. Avocado usage in production environments should favor the
use of this LTS release, instead of non-LTS releases.

Bug fixes will be provided on the "36lts"[1] branch until, at least,
September 2017. Minor releases, such as "36.1lts", "36.2lts" an so
on, will be announced from time to time, incorporating those stability
related improvements.

Keep in mind that no new feature will be added. For more information,
please read the "Avocado Long Term Stability" RFC[2].

Changes from 35.0:

As mentioned in the release notes for the previous release (35.0),
only bug fixes and other stability related changes would be added to
what is now 36.0lts. For the complete list of changes, please check
the GIT repo change log[3].

Install avocado

The Avocado LTS packages are available on a separate repository, named
"avocado-lts". These repositories are available for Fedora 22, Fedora
23, EPEL 6 and EPEL 7.

Updated ".repo" files are available on the usual locations:

Those repo files now contain definitions for both the "LTS" and
regular repositories. Users interested in the LTS packages, should
disable the regular repositories and enable the "avocado-lts" repo.

Instructions are available in our documentation on how to install
either with packages or from source[4].

Happy hacking and testing!


[1] https://github.com/avocado-framework/avocado/tree/36lts
[2] https://www.redhat.com/archives/avocado-devel/2016-April/msg00038.html
[3] 35.0...36.0lts
[4] http://avocado-framework.readthedocs.io/en/36lts/GetStartedGuide.html#installing-avocado

Avocado release 35.0: Mr. Robot

27 Apr 19:41
35.0
Compare
Choose a tag to compare

This is another proud announcement: Avocado release 35.0, aka "Mr
Robot", is now out!

This release, while a "regular" release, will also serve as a beta for
our first "long term stability" (aka "lts") release. That means that
the next release, will be version "36.0lts" and will receive only bug
fixes and minor improvements. So, expect release 35.0 to be pretty
much like "36.0lts" feature-wise. New features will make into the
"37.0" release, to be released after "36.0lts". Read more about the
details on the specific RFC[9].

The main changes in Avocado for this release are:

  • A big round of fixes and on machine readable output formats, such
    as xunit (aka JUnit) and JSON. The xunit output, for instance,
    now includes tests with schema checking. This should make sure
    interoperability is even better on this release.
  • Much more robust handling of test references, aka test URLs.
    Avocado now properly handles very long test references, and also
    test references with non-ascii characters.
  • The avocado command line application now provides richer exit
    status[1]. If your application or custom script depends on the
    avocado exit status code, you should be fine as avocado still
    returns zero for success and non-zero for errors. On error
    conditions, though, the exit status code are richer and made of
    combinable (ORable) codes. This way it's possible to detect that,
    say, both a test failure and a job timeout occurred in a single
    execution.
  • [SECURITY RELATED] The remote execution of tests (including in
    Virtual Machines) now allows for proper checks of host keys[2].
    Without these checks, avocado is susceptible to a man-in-the-middle
    attack, by connecting and sending credentials to the wrong machine.
    This check is disabled by default, because users depend on this
    behavior when using machines without any prior knowledge such as
    cloud based virtual machines. Also, a bug in the underlying SSH
    library may prevent existing keys to be used if these are in ECDSA
    format[3]. There's an automated check in place to check for the
    resolution of the third party library bug. Expect this feature to
    be enabled by default in the upcoming releases.
  • Pre/Post Job hooks. Avocado now defines a proper interface for
    extension/plugin writers to execute actions while a Job is runnning.
    Both Pre and Post hooks have access to the Job state (actually, the
    complete Job instance). Pre job hooks are called before tests are
    run, and post job hooks are called at the very end of the job (after
    tests would have usually finished executing).
  • Pre/Post job scripts[4]. As a feature built on top of the Pre/Post job
    hooks described earlier, it's now possible to put executable scripts
    in a configurable location, such as /etc/avocado/scripts/job/pre.d
    and have them called by Avocado before the execution of tests. The
    executed scripts will receive some information about the job via
    environment variables[5].
  • The implementation of proper Test-IDs[6] in the test result
    directory.

Also, while not everything is (yet) translated into code, this release
saw various and major RFCs, which are definitely shaping the future of
Avocado. Among those:

  • Introduce proper test IDs[6]
  • Pre/Post test hooks[7]
  • Multi-stream tests[8]
  • Avocado maintainability and integration with avocado-vt[9]
  • Improvements to job status (completely implemented)[10]

For a complete list of changes please check the Avocado changelog[11].

For Avocado-VT, please check the full Avocado-VT changelog[12].

Install avocado

Instructions are available in our documentation on how to install
either with packages or from source[13].

Updated RPM packages are be available in the project repos for
Fedora 22, Fedora 23, EPEL 6 and EPEL 7.

Packages

As a heads up, we still package the latest version of the various
Avocado sub projects, such as the very popular Avocado-VT and the
pretty much experimental Avocado-Virt and Avocado-Server projects.

For the upcoming releases, there will be changes in our package
offers, with a greater focus on long term stability packages for
Avocado. Other packages may still be offered as a convenience, or
may see a change of ownership. All in the best interest of our users.
If you have any concerns or questions, please let us know.

Happy hacking and testing!


[1] http://avocado-framework.readthedocs.org/en/35.0/ResultFormats.html#exit-codes
[2] https://github.com/avocado-framework/avocado/blob/35.0/etc/avocado/avocado.conf#L41
[3] https://github.com/avocado-framework/avocado/blob/35.0/selftests/functional/test_thirdparty_bugs.py#L17
[4] http://avocado-framework.readthedocs.org/en/35.0/ReferenceGuide.html#job-pre-and-post-scripts
[5] http://avocado-framework.readthedocs.org/en/35.0/ReferenceGuide.html#script-execution-environment
[6] https://www.redhat.com/archives/avocado-devel/2016-March/msg00024.html
[7] https://www.redhat.com/archives/avocado-devel/2016-April/msg00000.html
[8] https://www.redhat.com/archives/avocado-devel/2016-April/msg00042.html
[9] https://www.redhat.com/archives/avocado-devel/2016-April/msg00038.html
[10] https://www.redhat.com/archives/avocado-devel/2016-April/msg00010.html
[11] 0.34.0...35.0
[13] avocado-framework/avocado-vt@0.34.0...35.0
[12] http://avocado-framework.readthedocs.org/en/35.0/GetStartedGuide.html#installing-avocado

Avocado release 0.34.0: The Hour of the Star

22 Mar 15:43
0.34.0
Compare
Choose a tag to compare

Hello to all test enthusiasts out there, specially to those that
cherish, care or are just keeping an eye on the greenest test
framework there is: Avocado release 0.34.0, aka The Hour of the Star,
is now out!

The main changes in Avocado for this release are:

  • A complete overhaul of the logging and output implementation. This
    means that all Avocado output uses the standard Python logging library
    making it very consistent and easy to understand [1].
  • Based on the logging and output overhaul, the command line test
    runner is now very flexible with its output. A user can choose
    exactly what should be output. Examples include application output
    only, test output only, both application and test output or any
    other combination of the builtin streams. The user visible command
    line option that controls this behavior is --show, which is an
    application level option, that is, it's available to all avocado
    commands. [2]
  • Besides the builtin streams, test writers can use the standard
    Python logging API to create new streams. These streams can be shown
    on the command line as mentioned before, or persisted automatically
    in the job results by means of the --store-logging-stream command
    line option. [3][4]
  • The new avocado.core.safeloader module, intends to make it easier
    to to write new test loaders for various types of Python
    code. [5][6]
  • Based on the new avocado.core.safeloader module, a contrib script
    called avocado-find-unittests, returns the name of
    unittest.TestCase based tests found on a given number of Python
    source code files. [7]
  • Avocado is now able to run its own selftest suite. By leveraging the
    avocado-find-unittests contrib script and the External Runner [8]
    feature. A Makefile target is available, allowing developers to run
    make selfcheck to have the selftest suite run by Avocado. [9]
  • Partial Python 3 support. A number of changes were introduced that
    allow concurrent Python 2 and 3 support on the same code base. Even
    though the support for Python 3 is still incomplete, the avocado
    command line application can already run some limited commands at
    this point.
  • Asset fetcher utility library. This new utility library, and
    INSTRUMENTED test feature, allows users to transparently request
    external assets to be used in tests, having them cached for later
    use. [10]
  • Further cleanups in the public namespace of the avocado Test class.
  • [BUG FIX] Input from the local system was being passed to remote
    systems when running tests with either in remote systems or VMs.
  • [BUG FIX] HTML report stability improvements, including better
    Unicode handling and support for other versions of the Pystache
    library.
  • [BUG FIX] Atomic updates of the "latest" job symlink, allows for
    more reliable user experiences when running multiple parallel jobs.
  • [BUG FIX] The avocado.core.data_dir module now dynamically checks
    the configuration system when deciding where the data directory
    should be located. This allows for later updates, such as when
    giving one extra --config parameter in the command line, to be
    applied consistently throughout the framework and test code.
  • [MAINTENANCE] The CI jobs now run full checks on each commit on
    any proposed PR, not only on its topmost commit. This gives higher
    confidence that a commit in a series is not causing breakage that
    a later commit then inadvertently fixes.

For a complete list of changes please check the Avocado changelog[11].

For Avocado-VT, please check the full Avocado-VT changelog[12].

Avocado Videos

As yet another way to let users know about what's available in
Avocado, we're introducing short videos with very targeted content on
our very own YouTube channel:

https://www.youtube.com/channel/UCP4xob52XwRad0bU_8V28rQ

The first video available demonstrates a couple of new features
related to the advanced logging mechanisms, introduced on this
release:

https://www.youtube.com/watch?v=8Ur_p5p6YiQ

Install avocado

Instructions are available in our documentation on how to install
either with packages or from source[13].

Updated RPM packages are be available in the project repos for
Fedora 22, Fedora 23, EPEL 6 and EPEL 7.

Happy hacking and testing!


[1] http://avocado-framework.readthedocs.org/en/0.34.0/LoggingSystem.html
[2] http://avocado-framework.readthedocs.org/en/0.34.0/LoggingSystem.html#tweaking-the-ui
[3] http://avocado-framework.readthedocs.org/en/0.34.0/LoggingSystem.html#storing-custom-logs
[4] http://avocado-framework.readthedocs.org/en/0.34.0/WritingTests.html#advanced-logging-capabilities
[5] https://github.com/avocado-framework/avocado/blob/0.34.0/avocado/core/safeloader.py
[6] http://avocado-framework.readthedocs.org/en/0.34.0/api/core/avocado.core.html#module-avocado.core.safeloader
[7] https://github.com/avocado-framework/avocado/blob/0.34.0/contrib/avocado-find-unittests
[8] http://avocado-framework.readthedocs.org/en/0.34.0/GetStartedGuide.html#running-tests-with-an-external-runner
[9] https://github.com/avocado-framework/avocado/blob/0.34.0/Makefile#L33
[10] http://avocado-framework.readthedocs.org/en/0.34.0/WritingTests.html#fetching-asset-files
[11] 0.33.0...0.34.0
[12] avocado-framework/avocado-vt@0.33.0...0.34.0
[13] http://avocado-framework.readthedocs.org/en/latest/GetStartedGuide.html#installing-avocado

Lucky Luke

29 Dec 18:35
@lmr lmr
0.31.0
Compare
Choose a tag to compare

Hi everyone! Right on time for the holidays, Avocado reaches the end
of Sprint 31, and together with it, we're very happy to announce a brand
new release! This version brings stability fixes and improvements to
both Avocado and Avocado-VT, some new features and a major redesign of
our plugin architecture.

For Avocado the main changes are:

  • It's now possible to register callback functions to be executed when
    all tests finish, that is, at the end of a particular job[1].
  • The software manager utility library received a lot of love on the
    Debian side of things. If you're writing tests that install software
    packages on Debian systems, you may be in for some nice treats and
    much more reliable results.
  • Passing malformed commands (such as ones that can not be properly
    split by the standard shlex library) to the process utility library
    is now better dealt with.
  • The test runner code received some refactors and it's a lot easier
    to follow. If you want to understand how the Avocado test runner
    communicates with the processes that run the test themselves, you
    may have a much better code reading experience now.
  • Updated inspektor to the latest and greatest, so that our code is
    kept is shiny and good looking (and performing) as possible.
  • Fixes to the utility GIT library when using a specific local branch
    name.
  • Changes that allow our selftest suite to run properly on virtualenvs.
  • Proper installation requirements definition for Python 2.6 systems.
  • A completely new plugin architecture[2]. Now we offload all plugin
    discovery and loading to the Stevedore library. Avocado now defines
    precise (and simpler) interfaces for plugin writers. Please be aware
    that the public and documented interfaces for plugins, at the
    moment, allows adding new commands to the avocado command line app,
    or adding new options to existing commands. Other functionality can
    be achived by "abusing" the core avocado API from within
    plugins. Our goal is to expand the interfaces so that other areas of
    the framework can be extended just as easily.

For a complete list of changes please check the Avocado changelog[3].

Avocado-VT received just too many fixes and improvements to
list. Please refer to the changelog[4] for more information.

Install avocado

Instructions are available in our documentation on how to install
either with packages or from source[5].

Within a couple of hours, updated RPM packages will be available in
the project repos for Fedora 22, Fedora 23, EPEL 6 and EPEL 7.

Happy hacking and testing!


[1] http://avocado-framework.readthedocs.org/en/0.31.0/ReferenceGuide.html#job-cleanup
[2] http://avocado-framework.readthedocs.org/en/0.31.0/Plugins.html
[3] 0.30.0...0.31.0
[4] avocado-framework/avocado-vt@0.30.0...0.31.0
[5] http://avocado-framework.readthedocs.org/en/0.31.0/GetStartedGuide.html

Avocado release 0.30.0: Jimmy's Hall

10 Nov 20:37
0.30.0
Compare
Choose a tag to compare

Hello! Avocado reaches the end of Sprint 30, and with it, we have a new release available! This version brings stability fixes and improvements to both Avocado and Avocado-vt.

As software doesn't spring out of life itself, we'd like to acknowledge the major contributions by Lucas (AKA lmr) since the dawn of time for Avocado (and earlier projects like Autotest and virt-test). Although the Avocado team at Red Hat was hit by some changes, we're already extremely happy to see that this major contributor (and good friend) has not gone too far.

Now back to the more informational part of the release notes. For Avocado the main changes are:

  • New RPM repository location, check the docs[1] for instructions on how to install the latest releases
  • Makefile rules for building RPMs are now based on mock, to ensure sound dependencies
  • Packaged versions are now available for Fedora 22, newly released Fedora 23, EL6 and EL7
  • The software manager utility library now supports DNF
  • The avocado test runner now supports a dry run mode, which allows users to check how a job would be executed, including tests that would be found and parameters that would be passed to it. This is currently complementary to the avocado list command.
  • The avocado test runner now supports running simple tests with parameters. This may come in handy for simple use cases when Avocado will wrap a test suite, but the test suite needs some command line arguments.

Avocado-vt also received many bugfixes[3]. Please refer to the changelog for more information.

Install avocado

Instructions are available in our documentation on how to install either with packages or from source[1].

Happy hacking and testing!


[1] http://avocado-framework.readthedocs.org/en/0.30.0/GetStartedGuide.html
[2] 0.29.0...0.30.0
[3] avocado-framework/avocado-vt@0.29.0...0.30.0

Avocado release 0.29.0: Steven Universe

08 Oct 11:05
@lmr lmr
Compare
Choose a tag to compare

Hello! Avocado reaches the end of Sprint 29, and with it, we have a great release coming! This version of avocado once again brings new features and plenty of bugfixes:

  • The remote and VM plugins now work with --multiplex, so that you can use both features in conjunction.
  • The VM plugin can now auto detect the IP of a given libvirt domain you pass to it, reducing typing and providing an easier and more pleasant experience.
  • Temporary directories are now properly cleaned up and no re-creation of directories happens, making avocado more secure.
  • Avocado docs are now also tagged by release. You can see the specific documentation of this one at our readthedocs page [1]
  • Test introspection/listing is safer: Now avocado does not load python modules to introspect its contents, an alternative method, based on the Python AST parser is used, which means now avocado will not load possible badly written/malicious code at listing stage. You can find more about that in our test resolution documentation [2]
  • You can now specify low level loaders to avocado to customize your test running experience. You can learn more about that in the Test Discovery documentation [3]
  • The usual many bugfixes and polishing commits. You can see the full amount of 96 commits at [4]

For our Avocado VT plugin, the main changes are:

  • The vt-bootstrap process is now more robust against users interrupting previous bootstrap attempts
  • Some issues with RPM install in RHEL hosts were fixed
  • Issues with unsafe temporary directories were fixed, making the VT tests more secure.
  • Issues with unattended installed were fixed
  • Now the address of the virbr0 bridge is properly auto detected, which means that our unattended installation content server will work out of the box as long as you have a working virbr0 bridge.

Install avocado

As usual, go to https://copr.fedoraproject.org/coprs/lmr/Autotest/ to install
our YUM/DNF repo and get the latest goodies!

Happy hacking and testing!

[1] http://avocado-framework.readthedocs.org/en/0.29.0
[2] http://avocado-framework.readthedocs.org/en/0.29.0/ReferenceGuide.html#test-resolution
[3] http://avocado-framework.readthedocs.org/en/0.29.0/Loaders.html
[4] 0.28.0...0.29.0

Avocado 0.27.1: LinuxCon/KVM Forum 2015

20 Aug 17:36
@lmr lmr
Compare
Choose a tag to compare

Hi guys, we're up to a new avocado release! It's basically a bugfix release, with a few usability tweaks.

  • The avocado human output received some extra tweaks. Here's how it looks now:

    $ avocado run passtest
    JOB ID : f186c729dd234c8fdf4a46f297ff0863684e2955
    JOB LOG : /home/lmr/avocado/job-results/job-2015-08-15T08.09-f186c72/job.log
    TESTS : 1
    (1/1) passtest.py:PassTest.test: PASS (0.00 s)
    RESULTS : PASS 1 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0
    JOB HTML : /home/lmr/avocado/job-results/job-2015-08-15T08.09-f186c72/html/results.html
    TIME : 0.00 s

  • Bugfixes. You may refer to [1] for the full list of 58 commits.

Changes in avocado-vt:

  • Bugfixes. In particular, a lot of issues related to --vt-type libvirt were fixed and now that backend is fully functional.

Avocado 0.27.0: Terminator: Genisys

04 Aug 01:48
@lmr lmr
Compare
Choose a tag to compare

Avocado 0.27.0 released!

Hi guys, here I am, announcing yet another avocado release! The most exciting news for this release is that our avocado-vt plugin was merged with the virt-test project. The avocado-vt plugin will be very important for QEMU/KVM/Libvirt developers, so the main avocado received updates to better support the goal of having a good quality avocado-vt.

Changes in avocado:

  • The avocado human output received some tweaks and it's more compact, while still being informative. Here's an example:

    JOB ID     : f2f5060440bd57cba646c1f223ec8c40d03f539b
    JOB LOG    : /home/user/avocado/job-results/job-2015-07-27T17.13-f2f5060/job.log
    JOB HTML   : /home/user/avocado/job-results/job-2015-07-27T17.13-f2f5060/html/results.html
    TESTS      : 1
    (1/1) passtest.py:PassTest.test: PASS (0.00 s)
    RESULTS    : PASS 1 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0
    TIME       : 0.00 s
    
  • The avocado test loader was refactored and behaves more consistently in different test loading scenarios.

  • The utils API received new modules and functions:

    • NEW avocado.utils.cpu: APIs related to CPU information on linux boxes [1]
    • NEW avocado.utils.git: APIs to clone/update git repos [2]
    • NEW avocado.utils.iso9660: Get information about ISO files [3]
    • NEW avocado.utils.service: APIs to control services on linux boxes (systemv and systemd) [4]
    • NEW avocado.utils.output: APIs that help avocado based CLI programs to display results to users [5]
    • UPDATE avocado.utils.download: Add url_download_interactive
    • UPDATE avocado.utils.download: Add new params to get_file
  • Bugfixes. You may refer to [6] for the full list of 64 commits.

Changes in avocado-vt:

  • Merged virt-test into avocado-vt. Basically, the virt-test core library (virttest) replaced most uses of autotest by equivalent avocado API calls, and its code was brought up to the virt-test repository [7]. This means, among other things, that you can simply install avocado-vt through RPM and enjoy all the virt tests without having to clone another repository manually to bootstrap your tests. More details about the process will be sent on an e-mail to the avocado and virt-test mailing lists. Please go to [8] for instructions on how to get started with all our new tools.

See you in a couple of weeks for our next release! Happy testing!

The avocado development team

Links

[1] http://avocado-framework.readthedocs.org/en/latest/api/utils/avocado.utils.html#module-avocado.utils.cpu
[2] http://avocado-framework.readthedocs.org/en/latest/api/utils/avocado.utils.html#module-avocado.utils.git
[3] http://avocado-framework.readthedocs.org/en/latest/api/utils/avocado.utils.html#module-avocado.utils.iso9660
[4] http://avocado-framework.readthedocs.org/en/latest/api/utils/avocado.utils.html#module-avocado.utils.service
[5] http://avocado-framework.readthedocs.org/en/latest/api/utils/avocado.utils.html#module-avocado.utils.output
[6] 0.26.0...0.27.0
[7] avocado-framework/avocado-vt@20dd39e
[8] http://avocado-vt.readthedocs.org/en/latest/GetStartedGuide.html