Describe system tests using a set of templates instead of testcases with hardcoded configs and scenarios

Registered by Dennis Dmitriev

Currently, we are using a fixed cluster configuration with a fixed scenario for each system test, slightly correcting some parameters with environment variables.

There are several contexts that could be specified by templates:
- fuel admin node configuration,
- cluster settings,
- roles and hardware requirements for nodes in cluster,
- additional configs for plugins
- test scenario as a set of independent actions.

Using different template for any of the context gives a lot of variations for running system tests without adding a new hardcoded cases. Any new environment can be tested with all set of, for example, destructive tests; all cluster configurations can be tested for testing a specified plugin; just combining different templates for a test run.

Blueprint information

Nastya Urlapova
Dennis Dmitriev
Dmitry Tyzhnenko
Series goal:
Accepted for mitaka
Milestone target:
milestone icon 9.0
Started by
Timur Nurlygayanov
Completed by
Dmitry Tyzhnenko

Related branches



Gerrit topic:,topic:bp/template-based-testcases,n,z

Addressed by:
    Template based tests with yaml configs

Gerrit topic:,topic:feature/template-based-testcases,n,z

Addressed by:
    Template based test cases

Addressed by:
    Add new runner for system test

Addressed by:
    Move to template-based description of devops environments

Addressed by:
    Add decorator @action

Addressed by:
    Add custom groups for template base cases

Addressed by:
    Add nested action to template tests

Addressed by:
    Improvements of TestRail reporter for system_tests

Addressed by:
    Extends system tests to use devops template

Gerrit topic:,topic:feature/system_test_plugin_example,n,z

Addressed by:
    Add test for example plugins into system test

Gerrit topic:,topic:feature/bdd/class-setup-teardown,n,z

Addressed by:
    Add Setup and Teardown method for cases

Addressed by:
    Move define_custom_groups to system_test package

Addressed by:
    Add several common actions and tests

Addressed by:
    Refactoring of system_test classes

Addressed by:
    Add validator for test groups

Gerrit topic:,topic:feature/devops30,n,z

Addressed by:
    Add support devops 3.0 into fuel-qa

Addressed by:
    Replace django DoesNotExist exception with custom devops exception and provide full information

Addressed by:
    Add support devops 3.0 into fuel-qa


Work Items

This blueprint contains Public information 
Everyone can see this information.