Automation and testing

Getting started

A recording is an existing SNMP walk XML file. A project describes agents and their recording, configuration, MIB, and trap files. A lab groups agents for automation. A workspace is a private directory that stores imported assets, lab definitions, operations, and reports. A scenario is a saved timeline (also available as JSON) that schedules actions and optionally checks observed SNMP traffic.

Use Java 21 or later. If your installation supplies a suitable runtime, use that runtime; otherwise make sure the java command selects a compatible installation. The local runner and REST server require an existing, valid, signed simulator license supplied with --license-file. The desktop retains its normal licensing workflow. Agent capacity is shared across labs in one service, including agents that reserve capacity before they are started.

Run the commands below from the simulator installation directory. The examples use a writable automation-demo folder, a separate workspace, and a separate reports folder. Replace license-file paths with your own license. Quote paths containing spaces. The management service uses TCP port 18080; the example SNMP agent uses UDP port 1161. These are separate endpoints.

On macOS/Linux, the Java classpath separator is a colon. On Windows it is a semicolon. lib/* loads the simulator and its installed dependencies; classpath/* also supports a source checkout where dependency JARs are kept separately. The direct Java commands work without the optional simulator-run and simulator-server wrapper scripts.

macOS/Linux: java -cp "lib/*:classpath/*" \
  com.ireasoning.simulator.cli.SimulatorMain --help

Windows PowerShell: java -cp "lib/*;classpath/*" `
  com.ireasoning.simulator.cli.SimulatorMain --help

Use one workspace per running process. The desktop and its embedded REST server share one workspace. A separate runner or headless service needs its own workspace. Keep recordings and configuration files private if they contain communities, passwords, or scripts. The service copies imported files into its asset store; reset does not modify your original files.