Test driver properties
A test driver helps you perform solution testing and debugging, manage entities, determine the system and solution status, and create and submit events to Insight Server. To ensure that a test driver instance can connect to a server, create a testdriver.properties file and add properties and to modify the behavior of the test driver.
Properties for all test driver instances
There are several ways to set the properties that control the behavior of test driver instances:- Add properties to the testdriver.properties file.
- Call the getproperties and setproperty methods.
- Pass the properties using the TestDriver constructor.
The testdriver.properties file contains connectivity and server properties to set up and run the test driver. The testdriver.properties file must be located in the directory where the Java™ application starts, which is called the current directory, or in a location defined by the TESTDRIVER_HOME environment variable.
You can set the test driver connection in the testdriver.properties file. By default, the connection property is set to connection=HTTPS, which is set for new test client projects and works in single server test environments, such as cisDev. However, if you want to test in a multiple-server test environment and you want to receive debugging information from all of the servers, you must set the connection property to connection=GridConnection to receive the debug events.
Property | Description | Example value |
---|---|---|
bomProjectPath | Path to the root directory of the BOM project to use when you run test component files. | |
catalogServerEndpoints | Provides a list of WebSphere® eXtreme
Scale scale
catalog servers. The list is in the form host:port, host:port. Applies only when you set the connection property to connection=GridConnection. |
server1:2909 |
connection | Sets the test driver connection to use either HTTPS or GridConnection. By default, the connection property is set to HTTPS. | |
connectTimeout | The time in seconds that the test driver instance waits for the test environment connection to become available. | 30 |
disableServerCertificateVerification | This parameter is used to disable server certificate verification. If you set this parameter to true, the client does not check whether the certificate presented by the server is trusted. If the server is not trusted, authentication credentials and other user information might be passed on through the JMX connection. This parameter is optional. If not specified, it will use the value in the properties file specified by the --propertiesFile option. If no value is specified on the command line or in the properties file, it will default to false. | |
disableSSLHostnameVerification | Set the value of the property to true to disable verification of the SSL credentials. | |
gridPassword | The password for the data grid user name to
enable authentication. Applies only when you set the connection property to connection=GridConnection. |
|
gridSecurityEnabled | Set the value of the property to true to enable
data grid security. Applies only when you set the connection property to connection=GridConnection. |
|
gridUsername | A user name with administrator access for authentication
to the data grid. Applies only when you set the connection property to connection=GridConnection. |
|
host | The name of the Insight Server https host. If the runtime server is not running on localhost, you must supply the hostname of the runtime server. | localhost |
keyStoreLocation | The location of the keystore. If you do not specify a value, this parameter uses the value in the properties file specified by the --propertiesFile option. If no value is specified on the command line or in the properties file, no keystore is used. | |
keyStorePassword | The keystore password. If you do not specify a value, this parameter uses the value in the properties file specified by the --propertiesFile option. If no value is specified on the command line or in the properties file, you are asked to provide a password interactively. | |
logLevel | If this property is set, and the TESTDRIVER_HOME environment variable is defined, a log file is created in the specified location. Set the level of log messages stored in the file, for example: OFF, SEVERE, WARNING, INFO, FINE, FINER, FINEST. | |
password | The password for the administrator user name for authentication to the server. The value must match the userPassword property in the server.xml file. | |
port | The HTTPS port for the host. | 9443 |
solutionName | Specifies the solution to be tested. If the solution name property is not specified, the solution name must be specified when calling TestDriver.connect(String). | Provide the solution name as the property value. For example: OilServiceSolution |
sslProtocol | The SSL protocol for the connection. If you do not specify a value, this parameter uses the value in the properties file specified by the --propertiesFile option. If no value is specified on the command line or in the properties file, the value "TLSv1.2" is used. | |
testClientProjectPath | Path to the root directory of the test client project where test component files are located. By default, this property is set to the working directory of your test client application. | |
trustStoreLocation | Specifies the location of the truststore. This value is required, unless disableSSLHostnameVerification is true | |
trustStorePassword | The truststore password. This value is optional. If the password is not specified, the trust store is not verified. | |
username | A user name with administrator access for authentication to the server. The value must match the userName property in the server.xml file. |
Properties for receiving and storing debug information
To perform receive and store debug information for problem determination and debugging, you can use the methods in the TestDriver API to create a test driver instance, which connects to an Insight Server using a specific port or ports and sends the server a solution identifier and list of solution agents. The server sends debug information to the test driver instance, which collects the information in memory or writes it to a file.
Property | Description | Example value |
---|---|---|
debugAgentList | The property value is a comma-separated list of agents that send debug information to the test driver instance. Alternately, you can use a wildcard (*) as the property value to indicate that all agents in the solution send information to the test driver. | Unless specific agents are listed, information from all agents is captured. |
debugMaxEventQueueSize | Sets the maximum size of the debug information cache for the IADebugReceiver class. When the maximum amount of information is stored, the oldest information is removed from the cache. | 1000 |
debugNote | The value of the property is a string that is passed to the server. The note is included in the debug information. | |
debugServers | The property value provides a list of servers
where the test driver instance connects and receives debug information.
The list is in the form host:port, host:port. Use
this property to configure a cluster environment. Applies only when you set the connection property to connection=GridConnection. |
localhost:6543 |
debugServersTimeout | The test driver attempts to communicate with the debug servers for the specified length of time. The timeout value represents the time interval in seconds. | 10 |
Authentication for test driver connections
ia.test.user=tester
ia.test.password={xor}KzosKzot
The decoded value of the
password is tester, and is used as the password for
both the tester user ID and the keystore.Example test driver properties
solutionName=OilServiceSolution
catalogServerEndpoints=localhost:2809,server1:2909,server2:2810
host=server1
port=9443
username=tester
password=tester
trustStoreLocation=C\:\\IBM\\ODMInsights881\\runtime\\wlp\\usr\\servers\\cisDev\\resources\\security\\key.jks
trustStorePassword=tester
disableSSLHostnameVerification=true
The testdriver client is running on localhost, which also has a catalog server. In this topology, there is also two other catalog servers on server1 and server2. The catalogServerEndpoints property in testdriver.properties must list all of the catalog servers in the topology. server1 also hosts the runtime server, which is specified in the host property.