A transformation can be parameterized along zero, one or many axes of variability. An axis of variability describes the type of the underlying parameter and the expected valid range or values for that parameter.


Here is how some example axes can be defined:

    - name: blur
      type: int
      range: [3, 11]
      choices: []
      fixed: False

    - name: flip
      type: bool
      range: []
      choices: [False, True]
      fixed: False


  • name: name of the axis of variability

  • type: type of the axis of variability. Supports bool, int, float, str.

  • range: range of values for numerical axes (i.e. int and float)

  • choices: possible values for non-numerical axes (i.e. bool, str)

  • fixed: whether or not the value of the axis is fixed or it will be searched over during stress testing. If the axis is not fixed then range or choices should be specified, otherwise value.

  • value: value of the axis if it is fixed and not searched over.