We strongly recommend that you remove all sensitive data (e.g. passwords) from the SIDE file before it is imported. SUM is not designed to securely store sensitive data in the script. (Use secured variables for sensitive data.)
The new Selenium scenario is imported.
The Selenium scenario ID comes from the Selenium-IDE-generated GUID (in the .side file).
If you reimport the same SIDE file, it will "update" the previously imported Selenium scenario.
This also means that you won't have the possibility to reimport it in another Customer Network.
When a SIDE file is imported, its content is analyzed and:
Names and IDs come directly from the SIDE file.
|Step coming from an annotation||Annotation text||GUID of the Selenium command|
|Step coming from a test||Name of the test||GUID of the Selenium test|
|Scenario||Name of the test suite||GUID of the Selenium test suite|
As a consequence, if the same SIDE file is imported several times, this will update the existing SUM scenarios because the Selenium GUIDs will be the same.
Via the "run" Selenium command, a test can call another test.
In this case, the "run" command creates a new SUM step.
However, only the first level calls are considered.
In other words, if a called test (1st level) calls other tests (2nd level), these subsequent calls do not create SUM steps.
When the steps are created, they are automatically configured to:
When the SIDE file is imported, SUM detects the SUM variable annotations and automatically creates the corresponding scenario variables.
By default, the value of the created variable will be the "value" field of the corresponding Selenium command.
If the Selenium command has no value, the variable is not created.
If the SUM scenario creation good practice were followed, the secured variables don't have their correct value.
It will be necessary to appropriately set them via the SUM configuration in the Parameters section of the Scenario details.
By default, when a SUM robot (location) triggers the execution of a Selenium scenario, it tries to execute it locally (on the robot host).
(See How to configure the location host for local Selenium scenario execution)
However, this behavior can be controlled in the scenario configuration.
SUM configuration lets you decide between:
The deployment of a Selenium scenario on a location is similar to the other types of scenario:
Here are configuration recommendations to prevent Selenium Webdriver or web-browser issues.
|Error Message (in Agent log)||Error Message (in UI)||Possible Cause|
|org.openqa.selenium.TimeoutException: timeout: Timed out receiving message from renderer: 30.000||timeout: Timed out receiving message from renderer: 30.000||Likely the ChromeDriver was unable to initiate/spawn a new WebBrowser i.e. Chrome Browser session.|
|org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: exited abnormally.|
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
|unknown error: Chrome failed to start: exited abnormally.||The robot OS is probably Linux. The ChromeDriver can only be executed in headless mode.|
|org.openqa.selenium.WebDriverException: unknown error: cannot find Chrome binary||unknown error: cannot find Chrome binary||Chrome is not installed on this robot or the binary path given does not contain chrome executable.|
|org.openqa.selenium.WebDriverException: unknown error: unable to discover open pages||unknown error: unable to discover open pages|
The ChromeDriver has crashed.
This problem often occurs on Windows Server OS.
|org.openqa.selenium.SessionNotCreatedException: session not created from tab crashed||session not created|
from timeout: Timed out receiving message from renderer: 600.000
|This problem often occurs on Windows Server OS and when headless mode is enabled.|
For SUM locations running on a Linux host, the chromedriver can only be executed in "headless" mode.
For SUM locations running on a Windows host, it's also highly recommended to execute the chromedriver in "headless" mode (to prevent locking the sapadm user).
There are three situations in which SUM can take screenshots:
The Scenario configuration defines how SUM will capture the screenshots:
You can also define specific screenshot configuration for a given location (at scenario-on-location level).
In this case, the SUM considers the scenario-on-location configuration instead of the configuration at the scenario level.
Screenshot storage could quickly consume a considerable amount of space in your Focused Run HANA database.
An average screenshot occupies about 170 KB of disk space.
A scenario configured to be executed every 10 minutes on 10 locations will lead to 1,440 executions per day.
If the scenario has 10 steps and is configured to capture screenshots for each step of each execution, this represents about 2.4 GB of screenshots every day.
To prevent exhausting the Focused Run HANA space, SUM has specific housekeeping settings for the screenshots. By default, these are as follows:
Note: Housekeeping is performed when the housekeeping engine is executed – once per day.
In the SUM monitoring UI, you can also "protect" the screenshot of a specific execution from the housekeeping.
In this case, the corresponding screenshots are protected until the housekeeping of the execution (i.e. the SUM standard housekeeping) is performed.
You can change the housekeeping configuration in the Infrastructure section of the SUM configuration.
This requires a SUM super-administrator user.
Unlike other SUM scenario types, SUM Selenium scenarios are not created with the User Monitoring Script Editor.
Therefore, the scenario thresholds cannot be predefined (before the scenario import).
As a consequence, when a SUM Selenium scenario is first imported, the monitoring of the performance is temporarily disabled.
If you don't adjust the threshold values manually, they will be automatically valuated after the first successful execution of the scenario.
The automatically set thresholds will be:
This automatic setting will also reactivate the monitoring of the performance.
Note: The threshold values will be set at scenario level (for all the locations).
As with the other SUM scenario types, you can configure the Selenium scenario performance thresholds in the Thresholds section of the Scenario details:
You can also define specific thresholds for a given location (at scenario-on-location level).
In this case, the monitoring considers these scenario-on-location thresholds instead of the thresholds defined at the scenario level.