Introduction
In order to keep test execution efficient when number of test cases grows, it is crucial to maintain corresponding metadata, which define some aspects of how the test coverage is executed.
This concept proposes a flexible format for defining metadata in plain text files which can be stored close to the test code and structured in a hiearchical way with support for inheritance.
Contact: Petr Šplíchal
Features
Here are some of the key features of the Flexible Metadata Format:
- Simple ... common use cases super simple to read & write
- Hierarchy ... metadata structured in a hierarchy
- Inheritance ... data inheritance prevent duplication
- Elasticity ... single file or data scattered across hierarchy
- Virtual ... support for maintaining virtual test cases
Specification
We are currently working on a Metadata specification which describes in detail individual attributes to be used for selecting and executing tests in the Fedora CI (L1 metadata) and additional information which is necessary for executing multiple test cases (L2 metadata):
- Metadata: https://pagure.io/fedora-ci/metadata
Links
A Python module and a simple command line tool are available for experimenting. Detailed documentation is included as well: