tempest/tempest/scenario
Dmitry Tantsur 5c191faae7 Explicitly handle baremetal ports when checking if they are active
Currently we rely on [service_available]ironic which
1) will give incorrect results in a mixed environment
2) doesn't work in grenade jobs

This change only allows ports to be DOWN when they have VNIC type
of baremetal.

Change-Id: If24913b7097c5252a214bb780fc786aa0c3f983b
2020-04-14 17:10:20 +02:00
..
README.rst Fix docs markup consistency 2017-11-21 19:02:54 +09:00
__init__.py add scenario directory 2013-05-17 08:52:22 -04:00
manager.py Explicitly handle baremetal ports when checking if they are active 2020-04-14 17:10:20 +02:00
test_aggregates_basic_ops.py Replace list_hypervisors with list_services 2018-04-04 10:28:40 +03:00
test_encrypted_cinder_volumes.py docs: Fix incorrect docstrings in reStructuredText format 2018-11-21 19:06:43 -06:00
test_minbw_allocation_placement.py Minimum bandwidth allocation with placement 2019-06-07 12:42:07 +00:00
test_minimum_basic.py Relax volume compare in test_minimum_basic_scenario 2019-10-15 11:39:32 -04:00
test_network_advanced_server_ops.py Add host validation after live migration 2019-12-09 12:23:35 +02:00
test_network_basic_ops.py Add subnet_id option 2020-03-18 10:15:55 +00:00
test_network_v6.py Improve ipv6 configuration 2019-05-03 18:55:40 +00:00
test_object_storage_basic_ops.py docs: Fix incorrect docstrings in reStructuredText format 2018-11-21 19:06:43 -06:00
test_security_groups_basic_ops.py Merge "Adds protocol options for test_cross_tenant_traffic" 2019-05-29 21:44:37 +00:00
test_server_advanced_ops.py Trivial docstring cleanup in TestServerAdvancedOps 2018-04-25 16:17:03 -04:00
test_server_basic_ops.py Update json module to jsonutils 2019-03-06 22:54:51 +08:00
test_server_multinode.py Move test decorators to common 2017-08-23 17:09:33 +00:00
test_shelve_instance.py Log server console output during create/get timestamp 2018-07-30 22:46:56 +02:00
test_snapshot_pattern.py Log server console output during create/get timestamp 2018-07-30 22:46:56 +02:00
test_stamp_pattern.py Fix test_stamp_pattern to remove dependency of user supplied volume name 2020-01-24 19:19:45 -05:00
test_volume_backup_restore.py Add status check for creating volume backup 2018-06-19 01:08:28 +00:00
test_volume_boot_pattern.py Ensure bootable volume is gone in scenario test before tearDown 2020-03-04 10:18:27 +01:00
test_volume_migrate_attached.py Introduce an attached volume migration test 2019-04-25 10:34:58 +01:00

README.rst

Tempest Field Guide to Scenario tests

What are these tests?

Scenario tests are "through path" tests of OpenStack function. Complicated setups where one part might depend on completion of a previous part. They ideally involve the integration between multiple OpenStack services to exercise the touch points between them.

Any scenario test should have a real-life use case. An example would be:

  • "As operator I want to start with a blank environment":
    1. upload a glance image
    2. deploy a vm from it
    3. ssh to the guest
    4. create a snapshot of the vm

Why are these tests in Tempest?

This is one of Tempest's core purposes, testing the integration between projects.

Scope of these tests

Scenario tests should always use the Tempest implementation of the OpenStack API, as we want to ensure that bugs aren't hidden by the official clients.

Tests should be tagged with which services they exercise, as determined by which client libraries are used directly by the test.

Example of a good test

While we are looking for interaction of 2 or more services, be specific in your interactions. A giant "this is my data center" smoke test is hard to debug when it goes wrong.

A flow of interactions between Glance and Nova, like in the introduction, is a good example. Especially if it involves a repeated interaction when a resource is setup, modified, detached, and then reused later again.