qemu/tests/acceptance
Cleber Rosa b910545fbf tests/acceptance: look for target architecture in test tags first
A test can, optionally, be tagged for one or many architectures.  If a
test has been tagged for a single architecture, there's a high chance
that the test won't run on other architectures.  This changes the
default order of choosing a default target architecture to use based
on the 'arch' tag value first.

The precedence order is for choosing a QEMU binary to use for a test
is now:

 * qemu_bin parameter
 * arch parameter
 * arch tag value (for example, x86_64 if "🥑 tags=arch:x86_64
   is used)

This means that if one runs:

 $ avocado run -p qemu_bin=/usr/bin/qemu-system-x86_64 test.py

No arch parameter or tag will influence the selection of the QEMU
target binary.  If one runs:

 $ avocado run -p arch=ppc64 test.py

The target binary selection mechanism will attempt to find a binary
such as "ppc64-softmmu/qemu-system-ppc64".  And finally, if one runs
a test that is tagged (in its docstring) with "arch:aarch64":

 $ avocado run aarch64.py

The target binary selection mechanism will attempt to find a binary
such as "aarch64-softmmu/qemu-system-aarch64".

At this time, no provision is made to cancel the execution of tests if
the arch parameter given (manually) does not match the test "arch"
tag, but it may be a useful default behavior to be added in the
future.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20190312171824.5134-7-crosa@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
2019-05-02 21:33:26 -03:00
..
avocado_qemu tests/acceptance: look for target architecture in test tags first 2019-05-02 21:33:26 -03:00
boot_linux_console.py tests/acceptance: use "arch:" tag to filter target specific tests 2019-05-02 21:33:26 -03:00
cpu_queries.py i386: Disable OSPKE on CPU model definitions 2019-03-20 12:18:15 -03:00
empty_cpu_model.py cpu: Fix crash with empty -cpu option 2019-04-25 14:17:35 -03:00
linux_initrd.py tests/acceptance: use "arch:" tag to filter target specific tests 2019-05-02 21:33:26 -03:00
migration.py tests.acceptance: adds simple migration test 2019-02-22 14:07:01 -05:00
README.rst
version.py Acceptance tests: drop usage of "🥑 enable" 2019-02-22 14:07:01 -05:00
virtio_version.py tests/acceptance: use "arch:" tag to filter target specific tests 2019-05-02 21:33:26 -03:00
vnc.py Acceptance tests: drop usage of "🥑 enable" 2019-02-22 14:07:01 -05:00

============================================
Acceptance tests using the Avocado Framework
============================================

This directory contains functional tests, also known as acceptance
level tests.  They're usually higher level, and may interact with
external resources and with various guest operating systems.

For more information, please refer to ``docs/devel/testing.rst``,
section "Acceptance tests using the Avocado Framework".