Skip to main content

Connecting to Single System SUTs

Eggplant Functional (EPF) is designed to run as a two-system model, where EPF runs on one machine, sometimes referred to as the "EPF controller," and drives tests on a second machine, called the "system under test (SUT)."

You can run EPF on one system, with both the EPF controller and SUT on the same machine, using the following methods:

Why Run on a Single System?

Even though EPF was designed to run in a two-system model, you can can also run it as a single-system model. Running EPF with the SUT on a single system provides several benefits:

  • You can automate your own machine
  • A second machine is not required
  • No ports need to be opened
  • You are not vulnerable to SUT disconnections due to network disruptions

Using the Eggplant Functional Machine Only

EPF supports a single-system model using one of the following methods:

  • On Windows: By creating the SUT connection with the Single System connection type in the EPF Connection List. This uses the same credentials you use to log into the machine. We recommend managing your credentials with the Window Credential Manager for these connection types.
  • On Mac: By creating a second user account on the machine where you are running EPF, and using its credentials for the username and password with a VNC connection type in EPF in the Connection List.

Using the EPF Single System SUT Connection Type

To use the EPF Single System connection type, you add a new connection for it in the EPF Connection List and choose Single System as the connection type. See Connecting to SUTs and Single System Options for details. When you connect to your Single System SUT, EPF opens the Viewer Window with a view of the machine where you are running EPF. You can interact with the SUT through the Viewer window like you would if you were connected to a second machine. Perform all the actions you want to test on this SUT.

Some applications will not allow you to run on both the machine where EPF is running and in the "SUT" session you are connected to with your Single System connection. For example, the Chrome browser will not run in both sessions at the same time.

You can also establish or activate a your Single System connection from within a script when it runs. Before you can do this, you must create the connection using the add and save the connection through the Connection List and then pass its name with the connect command in the script. You cannot create or modify Single System connections withe the connect command within a script. See the connect command for more information.


Support for this connection type was added in EPF 23.3.0 for Windows only.

Step by Step: Using the EPF Single System SUT Connection Type

See Step by Step: Entering Single System Connection Details on the Connection List page for instructions.

For some applications, such as the Chrome browser, you cannot run them both in the EPF and SUT session at the same time. So, if you want to use Chrome for one of your tests, you will need to close it on the session where your EPF is running.

Using a Virtual Machine

You can use virtual machines (VMs) to run Eggplant Functional in its two-system model. You can run EPF on a desktop machine, and use a virtual machine for the SUT. Or, you can have two virtual machines: one hosting EPF and and one hosting the SUT.

VMs are a way to run an operating system within a window, sharing resources with the host system. They provide a cost-effective way of hosting multiple operating systems on the same hardware. Since a VM behaves as an individual machine, you can use this as a SUT with Eggplant Functional. To set up a VM, you can choose from a variety of third-party virtual machine products, include VMWare, Parallels, and VirtualBox. VMs are not included with EPF. You must purchase and/or license them separately.

Regardless of which option you choose, the method of installation is the same. You will need an installation disk or disk image for the operating system you want to install.

Step by Step: Using a Virtual Machine as a SUT

  1. Download/Install the virtual machine product you choose.
  2. After the VM software, create a new virtual machine.
  3. The system will prompt you to enter settings for that machine, such as disk size, ram, etc.
  4. Once you’ve created the new machine, boot it up, and enable connectivity to it by installing a VNC Server or enable the remote desktop protocol (RDP) application on the virtual machine, noting it’s IP Address. For further information, see VNC Servers.
  5. Open Eggplant Functional, and add the new virtual machine to your connection list. Treat it as any other machine you wish to test against.

The host operating system needs to be the Eggplant Functional controller, and the virtual machine needs to be the SUT. Otherwise, you will get a “hall of mirrors” effect with VNC connections when you connect to the SUT as it tries to "look at istelf."