Core properties

The Grinder is controlled by setting properties in the grinder.properties file. Here's a minimal grinder.properties file that uses the HttpPlugin:

grinder.plugin=net.grinder.plugin.http.HttpPlugin
grinder.test0.parameter.url=http://localhost:80/index.html

If you start The Grinder using this properties file it will communicate with the console using default addresses, use one worker process, one thread, and runs one cycle which contains once test. This is not too much use, so read on...

Table of core properties

This table lists the core properties understood by The Grinder engine. Refer to plugin specific documentation for additional properties understood by the plugin you are using.

grinder.processes The number of worker processes to start. Default 1.
grinder.threads The number of aworker threads that each worker process spawns. Default 1.
grinder.cycles The number of cycles of the test script each thread performs. 0 means "run forever". Default 1.
grinder.jvm Use an alternate JVM for worker processes. Defaults to java so you do not need to specify this if your PATH is sensible.
grinder.jvm.classpath Use to adjust the classpath used for the worker process JVMs. Anything specified here will be prepended to the classpath used to start the Grinder processes.
grinder.jvm.arguments Additional arguments to worker process JVM's.
grinder.logDirectory Directory to write log files to. Created if it doesn't already exist.
grinder.appendLog Append to, rather than overwrite, existing log files.
grinder.hostID Override the "host" string used in log filenames and logs. Defaults to the host name.
grinder.receiveConsoleSignals Set to true to respond to console signals. Default true.
grinder.reportToConsole Set to true to send statistics to the console. Default true.
grinder.consoleAddress The IP address or hostname to use for communication from the Grinder processes to the console. Default is all the network interfaces of the local machine.
grinder.consolePort The IP port to use for communication from the Grinder processes to the console. Default is 6372.
grinder.grinderAddress The multicast address to use for communication from the console to the agent and worker processes. See What do I need to do to set up multicast?. Default 228.1.1.1.
grinder.grinderPort The multicast port to use for communication from the console to the agent and worker processes. Default 1234.
grinder.reportToConsole.interval The period at which each process sends updates to the console. This also controls the frequency at which the data files are flushed. Default 500 ms.
grinder.thread.initialSleepTime The maximum time in milliseconds that each thread waits before starting. Unlike the other sleep times, this is varied according to a flat random distribution. The actual sleep time will be a random value between 0 and the specified value. Affected by grinder.thread.sleepTimeFactor, but not grinder.thread.sleepTimeVariation. Default 0 ms.
grinder.thread.sleepTime The time in milliseconds to wait between individual tests. Affected by both grinder.thread.sleepTimeFactor, and grinder.thread.sleepTimeVariation. Default 0 ms.
grinder.thread.sleepTimeFactor Apply a factor to all the sleep times you've specified. Setting this to 0.1 would run the script ten times as fast. Default 1.
grinder.thread.sleepTimeVariation The Grinder varies the specified sleep times according to a Normal distribution. This property specifies a fractional range within which nearly all (99.75%) of the times will lie. E.g., if the sleep time is specified as 1000 and the sleepTimeVariation is set to 0.1, then 99.75% of the actual sleep times will be between 900 and 1100 milliseconds. Default 0.2.
grinder.plugin The plugin class to use. Currently each script uses a single plugin.
grinder.plugin.parameter Prefix for properties interpreted by the plugin. See the the HTTP plugin documentation for examples.
grinder.test0 Prefix for test 0 properties. Test 1 properties have a prefix of grinder.test1, and so on. The tests are run in numerical order.
grinder.test0.description Information string used in the log files and the console.
grinder.test0.sleepTime Override grinder.thread.sleepTime for a specific test.
grinder.test0.parameter Prefix for test specific properties interpreted by the plugin. See the the HTTP plugin documentation for examples.
grinder.logProcessStreams Set to false to disable the logging of output and error steams for worker processes. You might want to use this to reduce the overhead of running a client thread. Default true.
grinder.recordTime Set to false to disable reporting of timing information; other statistics are still reported. Default true.