This specification defines a way how to store all metadata needed for test execution in plain text files close to the test code or application source code. Files are stored under version control directly in the git repository.
Flexible Metadata Format is used to store data in a concise human and machine readable way plus adds a couple of nice features like virtual hierarchy, inheritance and elasticity to minimize data duplication and maintenance.
The following metadata levels are defined:
- Level 0: Core
- Core attributes such as summary for short overview, description for detailed texts or the order which are common and can be used across all metadata levels.
- Level 1: Tests
- Metadata closely related to individual Tests such as the test script, directory path or maximum duration which are stored directly with the test code.
- Level 2: Plans
- Plans are used to group relevant tests and enable them in the CI. They describe how to discover tests for execution, how to provision the environment and prepare it for testing, how to execute tests and report test results.
- Level 3: Stories
- User Stories can be used to describe expected features of the application by defining the user story and to easily track which functionality has been already implemented, verified and documented.