Arguments | Description | Supported Value |
---|---|---|
ctest.mode | The mode of running configuration test | (1) default: this is the default mode of ctest runner, where the runner first inject the configuration value to the test and checks whether all required configuration parameters are used after the test execution. (2) checking: this mode only checks whether all required configuration parameters are used, but does not inject configuration value to the test and use default configuration value to run every test. (3) injecting: this mode only injects configuration value to the test but does not check required configuration usage. (4) base: this mode switches back to use a default non-ctest runner to run the test as a normal test, no injecting and checking. |
ctest.config.exclude | A comma-separated list that specified the parameters need to be excluded for tracking. | (1) Configuration parameter name string; (2) parameter name regex. The full string name and regex can use together. |
Arguments | Description | Supported Value |
---|---|---|
config.inject.dir | A directory that contains configuration files that under injection for each configuration test class. Each file should named as the same as the configuration test class. Currently JSON and XML files are supported. | Directory path |
config.inject.cli | An argument that allows user to set configuration key value pairs directly. | Configuration key value pairs seperated by comma. For example "param1=value1,param2=value2,...,paramN=valueN" |
Arguments | Description | Supported Value |
---|---|---|
ctest.config.save | For tests with @Test, whether to save the tracked configuration parameter into a JSON file. This is useful when one does not know what configuration parameters are used in the test. | True / False |
ctest.mapping.dir | This is a directory that contains all configuration mapping files for each test. Each file name should be the same as the configuration method name. The runner will automatically search for the file under this directory if specified and checks usage accordingly. The default value is ./ctest/mapping |
Directory path |
ctest.config.save.dir | The directory to save the tracked configuration parameter. The default value is ./ctest/saved_mapping |
Directory path |
Arguments | Description | Supported Value |
---|---|---|
ctest.runtime.selection | Whether to select test methods at runtime. If set to true, then the runner will try to read the target parameter from the option "ctest.selection.parameter" and perform selection based on the given parameter list. | True / False |
ctest.selection.parameter | A list of configuration parameters separated by comma, or a configuration file path start with @. If value is a configuration file, then each line of the file should be the name of "one" configuration parameter. Only the test methods that use the specified configuration parameter will be executed. | Configuration parameter name seperated by comma; or a configuration file path start with @ |
Arguments | Description | Supported Format |
---|---|---|
ctest.getter | Specifies the method for getting the value of a configuration parameter. | Signature1#(Optional)Pos1#(Optional)TransferMethod1;Signature2#(Optional)Pos2#(Optional)TransferMethod2;... |
ctest.setter | Specifies the method for setting the value of a configuration parameter. | Signature1#(Optional)Pos1#(Optional)TransferMethod1;Signature2#(Optional)Pos2#(Optional)TransferMethod2;... |
ctest.injector | Specifies the method for injecting the value of a configuration parameter. | Signature1#(Optional)Pos1#(Optional)TransferMethod1;Signature2#(Optional)Pos2#(Optional)TransferMethod2;... |
Note: |
- Pos: Index of the input to this method that will be the parameter name or will be used for TransferMethod.
- TransferMethod: Method name needed to convert the input to the parameter name.