How to Configure the SUM Locations for Selenium

How to enable the Selenium Capability on a SUM Location

By default, the Selenium capability is not enabled on the SUM locations.

You can enable it from the SUM configuration by performing the following steps:

  1. Open the SUM configuration popup.
  2. Navigate to the Locations section.
  3. In the Locations table, select the row (location) for which the Selenium capability has to be enabled.
  4. Above the table, click [Selenium] then [Enable].
  5. Ensure that you carefully read all the information contained in the popup.
    If you agree, click [Ok].

How to configure the Location Host for Local Selenium Scenario Execution

In order to locally execute Selenium scenarios, the following applications are required on the location host:

  • Chrome Web browser (with Focused Run 3.00, only the Chrome Web browser is supported)
  • Selenium webdriver corresponding to the Web browser version.

Important

The Web browsers and webdrivers are not developed by SAP.

Pay special attention to their security recommendations when you install and configure them.
For security reasons, we generally recommend that you use up-to-date versions.

Web Browser

Chrome can be installed in any folder.

However, the Web browser must be accessible by the sapadm user of the host.

Selenium Webdriver for Chrome

The webdriver for Chrome is an executable file and is generally referred to as chromedriver.

Installation

The chromedriver executable file must be installed in the following folder of the SDA infrastructure (on the location host):

agent\work\com.sap.solman.agent.sum\<FRUN_System>\SeleniumWebDriver\chromedriver

<FRUN_System> is the SID of the connected SAP Focused Run system.
In other words, if the location is used for several SAP Focused Run systems, the installation is required for each SAP Focused Run.

Important

Ensure that you install the webdriver version that corresponds to the Chrome Web browser version (i.e. the same version).

At runtime, the SUM robot will execute the chromedriver executable file with the sapadm user of the host.

Download

Generally, the webdriver for Chrome can be retrieved here: https://chromedriver.chromium.org

Security Considerations

Security considerations for the chromedriver can be found here: https://chromedriver.chromium.org/security-considerations

How to Configure the Location Host for Remote Selenium Scenario Execution

In order to remotely execute Selenium scenarios, the location host requires access to the remote URL specified in the scenario configuration.

 

What are the Impacts of the Location Host CPU and Memory Power

When SUM Selenium scenarios are executed locally, the CPU and memory power of the location host has the following impacts:

  • Impact on the reported performance metrics
  • Impact on the maximum number of scenarios
  • Impact on the other processes

Impact on the Reported Performance Metrics

Unlike for an HTTP scenario, when a Selenium scenario is executed, the client-side UI is also rendered (in the Web browser).
This way, SUM can include the client-side performance in the reported performance metrics.

With a local execution, the rendering is performed on the SUM location host.
This could take more or less time, depending on the host CPU load.

Therefore, the more the location host is loaded, the worse the monitored performance is.

On a heavily loaded host, this could even lead to availability errors (due to WebDriver timeout exceeded – 30 seconds per command).

Impact on the Maximum Number of Scenarios

With a local execution, the rendering is performed on the SUM location host.
Each execution creates:

  • One instance of the Selenium WebDriver
  • At least one instance of the Web browser

This consumes CPU and memory on the host.
The impact could differ from one scenario to another (depending on its complexity), but the location host resources can rapidly be exhausted if too many Selenium scenarios are executed simultaneously.

You can mitigate that by configuring SUM to control the maximum number of simultaneous executions of Selenium scenarios on a given SUM location.
(For instance, via a local Semaphore or via appropriate scenarios-on-location execution scheduling.)
For an average powerful host (4 cores – 16GB memory), we recommend a maximum of five simultaneous executions.

Impact on the Other Processes

The local execution of a SUM Selenium scenario has a higher impact on the host CPU and memory than on the execution of a SUM HTTP scenario.

This has to be taken into account, especially if the host is used for other activities (whether related to Focused Run or not).