This functionality is supported only if you are using the Open Agent.
To test applications in multiple UI sessions on a single machine or to test multiple agents on a single machine, connect to
multiple Open Agent instances on the machine. Every agent runs in its own UI-session. A UI session can be a Remote Desktop
Protocol (RDP) connection or a
Citrix-based connection.
-
Create the UI sessions.
-
Open a command line window.
-
Navigate to the folder
/ng/agent in the
Silk Test installation directory.
For example, the default folder path might look like the following:
C:\Program Files (x86)\Silk\SilkTest\ng\agent.
-
In each UI session, execute the following command:
openAgent.exe -infoServicePort=<port> -infoServiceSecurePort=<securePort>.
Note: Use unique port numbers, because these ports will be used in your
Silk Test Classic script to identify the Open Agent and the UI session in which the agent is running. The port set with the
infoServicePort option will be used for unencrypted HTTP communication between the Open Agent and the Information Service, and the port set
with the
infoServiceSecurePort option will be used for encrypted HTTPS communication.
-
Change your
Silk Test Classic scripts to connect to the Open Agent instances.
To connect to an Open Agent instance, add the following line to the script:
HMACHINE hAgent = Connect("hostname:port")
Where
hostname is the name of the machine on which the agent is running, and
port is the unique port that you have specified, which can be either the HTTP or the HTTPS port.
The resulting objects are independent of each other and can be used either in one thread or in multiple threads.
Note: If you want to launch an application in multiple UI sessions, you have to execute the base state for each UI session.
Note: To use TrueLog when testing applications in multiple UI sessions on a remote machine, you need to manually copy any generated
TrueLog files from the remote machine to your local machine.
Example
Assume that the server machine that is hosting the UI sessions is named
ui-srv. You can create three UI sessions by using the ports 22903/48563, 22904/48564, and 22905/48565.
In the first session, open the command line window, navigate to the
agent directory, and type the following:
openAgent.exe -infoServicePort=22903 -infoServiceSecurePort=48563
Do the same for the other two sessions with the respective ports 22904/48564 and 22905/48565.
To connect to the Open Agent instances, add the following code to your script:
HMACHINE hAgent1 = Connect("ui-srv:22903") // or 48563 for secure HTTPS communication
HMACHINE hAgent2 = Connect("ui-srv:22904") // or 48564 for secure HTTPS communication
HMACHINE hAgent3 = Connect("ui-srv:22905") // or 48565 for secure HTTPS communication
The following sample script prints a simple text to each of the three UI sessions:
[-] main()
[ ] HMACHINE hAgent1 = Connect("ui-srv:22903")
[ ] HMACHINE hAgent2 = Connect("ui-srv:22904")
[ ] HMACHINE hAgent3 = Connect("ui-srv:22905")
[ ] hAgent1->FindWindow("//Window").TypeKeys("Hello to session 1!")
[ ] hAgent2->FindWindow("//Window").TypeKeys("Hello to session 2!")
[ ] hAgent3->FindWindow("//Window").TypeKeys("Hello to session 3!")