Web Testing Setup
Step 1: Install drivers
In order to use Cycle web Steps, a driver must be installed for Chrome, Internet Explorer, or Microsoft Edge.
With a Cycle Project open, click the Project Settings button:
Then navigate to:
Project Settings > Execution Settings > Web Drivers & Browser
Downloading Webdrivers
Chrome and IE
The downloads for Chromedriver and IEDriver executables can be found from Chromium and Selenium:
The Chrome webdriver is typically named chromedriver.exe
, the Internet Explorer webdriver is typically named IEDriverServer.exe
. These drivers can be saved to anywhere on the hard drive, as long as you know the path to the location.
Microsoft Edge
First, ensure you install Microsoft Edge (Chromium). To confirm that you have Microsoft Edge (Chromium) installed, go to edge://settings/help
in the browser, and verify the version number is Version 75 or later.
To begin automating tests with Edge, use the following steps to ensure that the WebDriver version you install matches your browser version.
-
Go to
edge://settings/help
to get your version of Edge. -
Navigate to the Microsoft Edge Driver downloads page and download the driver that matches your Edge version number.
Set Driver Location within Cycle Settings
Once you have downloaded a given webdriver, you will need to update the driver location in Cycle Settings. The location must be exact for each browser’s webdriver, and must include the name of the driver, as shown in the image below.
There are additional settings related to web test execution in Cycle--one for automatically closing the web browser after a given Scenario is finished executing, and another to automatically close the web browser when exiting Cycle. It should also be noted that both browsers will rely on whatever proxy settings the user is using as a default.
Step 2: Update browser settings
First, note that Cycle expects all web browsers to be installed in their default locations.
Chrome and Microsoft Edge
There are no browser settings that must be updated in Chrome or Edge.
It should be noted that any settings made in a user’s Chrome browser will not be carried over into the Cycle-generated Chrome browser, because Chrome settings are tied to user profiles.
Internet Explorer
In order for Cycle to work with the Internet Explorer web browser, you must verify the following:
-
Ensure you are running the latest version of the Internet Explorer Driver Server from here.
-
In Internet Explorer, go to
Settings > Zoom
and ensure that zoom is set to 100%. -
In IE's
Advanced Options
make sure the following settings are not checked/enabled:- Reset text size to medium for new windows and tabs
- Reset zoom level for new windows and tabs
-
On IE 7 or higher on Windows Vista or Windows 7, you must set the Protected Mode settings for each zone to be the same value. The value can be on or off, as long as it is the same for every zone. To set the Protected Mode settings, choose "Internet Options..." from the Tools menu, and click on the Security tab. For each zone, there will be a check box at the bottom of the tab labeled "Enable Protected Mode".
-
Additionally, "Enhanced Protected Mode" must be disabled for IE 10 and higher. This option is found in the Advanced tab of the Internet Options dialog. The browser zoom level must be set to 100% so that the native mouse events can be set to the correct coordinates.
-
For Windows 10, you also need to validate your Display Settings. Under the Scale and Layout section
Change the size of text, apps, and other items
should be set to 100%.- If you are using remote desktop to run Cycle on a remote machine, this display setting must be set to 100% on both your local machine and the remote machine that you are connecting to.
-
If you are running a popup blocker or ad blocker, ensure the site you are testing is whitelisted or the blocker is turned off.
- Add the sites you wish to access to the Trusted sites zone by going to Settings Menu > Internet Options > Security > Trusted sites and clicking the "Sites" button. Add the domain of the website you wish to access to the Trusted sites list. It is very important that you add the domains you wish to test to the Trusted sites list. You must also verify that the Security level for the Trusted sites zone is not set to “High”.
For IE 11 only:
You will need to set a registry entry on the target computer so that the driver can maintain a connection to the instance of Internet Explorer it creates.
- For 32-bit Windows installations, the key you must examine in the registry editor is
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE
. - For 64-bit Windows installations, the key is
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE
.
(Please note that the FEATURE_BFCACHE
subkey may or may not be present, and should be created if it is not present.)
Important: Inside this key, create a DWORD value named iexplore.exe with the value of 0.
Edge IE Mode
In preparation of the Internet Explorer End-Of-Life, Microsoft made it possible to run IE Compatibility Mode websites inside of Microsoft Edge.
Cycle also supports this capability by using the IE Driver to attach to Microsoft Edge. To utilize this functionality, follow the steps below.
Note: This guide assumes you have already configured the necessary Compatibility Mode, Security, and/or ActiveX settings for your legacy websites in the Internet Options control panel widget. Additionally, please be sure to perform the IE configuration instructions above.
-
Ensure that the 32-bit, Chromium-based version of Microsoft Edge is installed (the default location of the executable is
C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe
) -
Download and extract the 32-bit IE Driver Server from the Selenium website
-
Important: Add the directory that contains
IEDriverServer.exe
to your system or user environmentPATH
variable.To ensure successful configuration, open a command prompt window and run
IEDriverServer
from any directory other than where it was installed. The operating system should be able to find the executable regardless of current working directory. -
After making changes to environment variables, Cycle must be restarted.
-
Configure the IE Driver inside of your Cycle project's Execution settings
-
Execute the following steps to ensure successful configuration:
Given I open "Edge IE Mode" web browser
When I navigate to "https://www.cyclelabs.io" in web browserEnsure you see a Microsoft Edge window with the following layout:
Step 3: Choose a web driver service
Cycle contains 2 versions of the web driver service:
- Full search web driver service
- Limited search web driver service
What's the difference?
Full search will search for elements in the root content and then recursively search any iframes.
Limited search will only search for elements in the current scope. To interact with an element in an iframe, you'll first need to switch to that iframe.
Who uses Full search?
New and experienced users use Full search. It is the default service and you do not need to do anything to set it up. All visible elements on the page can be located without considering scope.
Who uses Limited search?
Experienced users who find they have long-running web tests and need to reduce execution time. Limited Search allows the user to potentially narrow the scope of element searches so the driver will spend less time searching.
Users who are testing pages where they're only interested in the root content. If there are iframes on your pages, but you do not wish to interact with any of their content, then consider using Limited Search.
I've decided. What else do I need to know?
As of Cycle 2.17.0, the Limited search web driver service is in beta.
New steps were added for dealing with iframes. View them in the step guide by filtering for category IFrame.
Full search:
- SETUP: No action required.
- BETA BEHAVIOR: The IFrame steps will appear in auto complete and can be included in a Feature without an error in the editor. When the test is executed, however, these steps will fail.
- LONG TERM BEHAVIOR: The IFrame steps will not appear in auto complete and are not valid steps in the editor.
Limited search:
- SETUP:
- BETA BEHAVIOR:
- Enabled via an environment variable override.
- Set CYCLE_WEB_DRIVER_SERVICE_ENABLED=true
- LONG TERM BEHAVIOR: TBD
- BETA BEHAVIOR:
- BETA BEHAVIOR To expedite development, the image matching steps, and their variants, are not supported.
- E.G. I see image "Image:IMAGE_FILE_PATH" in web browser
- LONG TERM BEHAVIOR: TBD