The various JSON files used by FediTest
https://feditest.org/reference/json-files/
FediTest makes use of a number of types of JSON files for different purposes. This page attempts to explain them.
Node Definition: A JSON file that defines a Node, including the Node Driver and potentially a number of addition parameters, such as names of accounts on that Node or its hostname.
Syntax for how to define Nodes.
Constellation Definition: A JSON file that includes one ore more Node definition JSON files, and arranges them into a Constellation definition that can be used in a Test Plan.
A Constellation definition can be created from Node definition JSON files with
feditest create-constellation
.Test Plan Session Template: A JSON file that contains a list of tests to run. The Test Plan Session Template does assign a Constellation to it.
A Test Plan Session Template JSON file can be created from tests found by FediTest with
feditest create-session-template
.Test Plan: A JSON file that combines a Test Plan Session Template with one or more Constellation definitions, so the tests in the Test Plan Session Template are run once with each Constellation.
A Test Plan JSON file can be created from a Test Plan Session Template JSON file and one more more Constellation JSON files with
feditest create-testplan
.Test Run Transcript: A JSON file that contains the results of a Test Run, such as which tests were run and the result of each tests. The Test Run transcript also contains the Test Plan that was run and some metadata, such when the run was performed.
A Test Run transcript is produced by
feditest run
.Report: a Report can be produced in various formats with
feditest convert-transcript
from any Test Run Transcript.
This flow is shown graphically below:
While it is useful to be able to run these commands separately, and for understanding FediTest, “later” commands now also understand the options of the “earlier” ones, so several steps can be run as one command.