From Fedora Project Wiki

(Include essential summary and links only)
(Extra section for specification)
 
Line 11: Line 11:
 
'''Contact:''' [[User:Psss|Petr Šplíchal]]
 
'''Contact:''' [[User:Psss|Petr Šplíchal]]
  
== Features ==
+
= Features =
  
 
Here are some of the key features of the Flexible Metadata Format:
 
Here are some of the key features of the Flexible Metadata Format:
Line 20: Line 20:
 
* [https://fmf.readthedocs.io/en/latest/features.html#elasticity Elasticity] ... single file or data scattered across hierarchy
 
* [https://fmf.readthedocs.io/en/latest/features.html#elasticity Elasticity] ... single file or data scattered across hierarchy
 
* [https://fmf.readthedocs.io/en/latest/features.html#virtual Virtual] ... support for maintaining virtual test cases
 
* [https://fmf.readthedocs.io/en/latest/features.html#virtual 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 =
 
= Links =
Line 31: Line 41:
 
* Copr: https://copr.fedorainfracloud.org/coprs/psss/fmf/
 
* Copr: https://copr.fedorainfracloud.org/coprs/psss/fmf/
 
* PIP: https://pypi.python.org/pypi/fmf
 
* PIP: https://pypi.python.org/pypi/fmf
 
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:
 
 
* Metadata: https://fedoraproject.org/wiki/CI/Metadata
 

Latest revision as of 11:03, 11 June 2019

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: