From Fedora Project Wiki

Revision as of 11:03, 11 June 2019 by Psss (talk | contribs) (Extra section for specification)

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
  • Hiearchy ... 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):

Links

A Python module and a simple command line tool are available for experimenting. Detailed documentation is included as well: