Test Runner System Properties
This is an overview over all system properties supported by the test runner. While command-line arguments are used for all the frequently-set configuration parameters that make up a test run, some lesser-used aspects can be modified by providing certain system properties. Here's an as-complete-as-possible list over the properties available.
Note that some properties might just be available in newer Integrity versions. This overview is oriented at the newest stable version.
Property Name | Type | Default Value | Description |
integrity.script.encoding | String | default charset | Defines the encoding to be used when parsing Integrity script files. |
integrity.setlist.trace | Boolean | false | Enables tracing output of the generation of internal execution state data. |
integrity.variables.trace | Boolean | false | Enables tracing output of variable definitions, value assignments et cetera. |
integrity.variables.stacktrace | Boolean | false | Extends the variable tracing mode by also dumping stack traces on every trace log output. If this is true, the basic variable trace mode is automatically true as well. |
integrity.timeset.trace | Boolean | false | Enables tracing output of background work and communication done to process "timeset" commands. |
integrity.xmlwriter.transform.stacksize | Integer | 10485760 | Configures the stack size in bytes for the thread used to perform XML-to-HTML transformation after the test run (if not disabled via console parameters). The XSLT transform can require very deep stacks, which is why this is configurable and defaults to a relatively large value. |
integrity.xmlwriter.trace | Boolean | false | Enables tracing output of the XML result output writer. |
integrity.xmlwriter.xsltpath | String | resource/xhtml.xslt | This parameter allows to override the XSLT script used to transform the test result XML data into user-friendly HTML. If you want to customize this step, you may extract the script from the test runner jar and change it to fit your needs. The path given in the parameter is first attempted to be resolved by resource loading via the classloader, and if that fails, by opening a corresponding file from the file system. |
integrity.xmlwriter.consoleLinesLimit | Integer | 10000 | Maximum number of lines of console output that is added to a single test/call. |
integrity.xmlwriter.consoleLineSizeLimit | Integer | 1000 | Maximum length of a single console log line. |
integrity.xmlwriter.formattedStringSizeLimit | Integer | 10000 | The maximum length of formatted strings in results. If these get overly long, they impose a very hefty CPU load on the XSLT transformer, which must convert them to HTML markup. Hence extremely long formatted strings are just returned in the result as "normal" strings, which still carry all the data, but just don't format as nicely in the result. |
integrity.runner.perflog | Boolean | false | Can be used to enable performance logging. Certain performance-critical sections of the Integrity test execution (especially those covering the test startup phase) are timed and the timing data is printed to standard output if this is enabled. |
integrity.fork.startup.retrycount | Integer | 1 | The number of attempts that should be made to start and connect to a new fork process. If the process dies during startup or the connection cannot be established during the connect timeout (see property below), fork startup is retried up to this number of times. If the number is exceeded, the test run is aborted. |
integrity.fork.timeout.connect | Integer | 180 | A timeout in seconds which an Integrity master process waits for when trying to establish a connection to a fork. After this time has elapsed, a fork that has not yet opened its remoting port is considered "dead" and the corresponding process is being killed, resulting in an abortion of the entire test run. |
integrity.fork.timeout.single | Integer | 10000 | A timeout in milliseconds for each connect attempt when connecting to forks. If this timeout was hit, but the integrity.fork.timeout.connect is not yet elapsed, another connect attempt is started. |
integrity.fork.timeout.wait | Integer | 300 | A timeout in seconds that a master process waits, after successfully connecting to a fork, until the fork must be ready to execute its first code segment. |
integrity.fork.timeout.kill | Integer | 60 | A timeout in seconds that a master process waits for a fork to die if its process was forcefully killed. |
integrity.fixtures.logging.verbose | Boolean | false | If set to true, the most detailed log output ("trace" level) provided to the FixtureLogger by fixtures is printed out. Normally, only higher levels ("debug"+) are printed on the console and provided in the test result. |
integrity.runner.loading.verbose | Boolean | false | If set to true, the test runner will print each loaded script regardless of the total number of scripts loaded. Normally, if more than 50 scripts are being loaded, only a summary over all scripts is printed. |
integrity.runner.threadcount | Integer | # of processors | The number of threads to use for parallelized tasks in the test runner startup phase (script parsing). |