testcentricity_web 4.0.2 → 4.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md CHANGED
@@ -4,23 +4,21 @@
4
4
 
5
5
 
6
6
  The TestCentricity™ Web core generic framework for desktop and mobile web browser-based app testing implements a Page Object and Data
7
- Object Model DSL for use with Cucumber, Capybara (version 3.x), and Selenium-Webdriver (version 3.x).
7
+ Object Model DSL for use with Cucumber, Capybara (version 3.x), and Selenium-Webdriver (version 4.x).
8
8
 
9
9
  **An example project that demonstrates the implementation of a page object model framework using Cucumber and TestCentricity™ can be found [here](https://github.com/TestCentricity/tc_web_sample).**
10
10
 
11
11
  The TestCentricity™ Web gem supports running automated tests against the following web test targets:
12
- * locally hosted desktop browsers (Firefox, Chrome, Safari, or IE)
12
+ * locally hosted desktop browsers (Firefox, Chrome, Edge, Safari, or IE)
13
13
  * locally hosted emulated iOS Mobile Safari, Android, Windows Phone, or Blackberry mobile browsers (running within a local instance of Chrome)
14
- * locally hosted "headless" Chrome or Firefox browsers
15
- * desktop and emulated mobile web browsers hosted on Selenium Grid and Dockerized Selenium Grid environments
14
+ * locally hosted "headless" Chrome, Firefox, or Edge browsers
15
+ * remote desktop and emulated mobile web browsers hosted on Selenium Grid 4 and Dockerized Selenium Grid 4 environments
16
16
  * mobile Safari browsers on iOS device simulators or physical iOS devices (using Appium and XCode on OS X)
17
17
  * mobile Chrome or Android browsers on Android Studio virtual device emulators (using Appium and Android Studio on OS X)
18
18
  * cloud hosted desktop (Firefox, Chrome, Safari, IE, or Edge) or mobile (iOS Mobile Safari or Android) web browsers using the following service:
19
19
  * [Browserstack](https://www.browserstack.com/list-of-browsers-and-platforms?product=automate)
20
20
  * [Sauce Labs](https://saucelabs.com/open-source#automated-testing-platform)
21
- * [CrossBrowserTesting](https://crossbrowsertesting.com/selenium-testing)
22
21
  * [TestingBot](https://testingbot.com/features)
23
- * [Gridlastic](https://www.gridlastic.com/test-environments.html)
24
22
  * [LambdaTest](https://www.lambdatest.com/selenium-automation)
25
23
  * web portals utilizing JavaScript front end application frameworks like Ember, React, Angular, and GWT
26
24
  * web pages containing HTML5 Video and Audio objects
@@ -33,7 +31,7 @@ A complete history of bug fixes and new features can be found in the {file:CHANG
33
31
 
34
32
  ## Installation
35
33
 
36
- Add this line to your automation project's Gemfile:
34
+ TestCentricity requires Ruby 2.7 or later. To install the TestCentricity gem, add this line to your automation project's Gemfile:
37
35
 
38
36
  gem 'testcentricity_web'
39
37
 
@@ -80,7 +78,6 @@ And then execute:
80
78
  $ bundle
81
79
 
82
80
 
83
-
84
81
  ## Page Objects
85
82
 
86
83
  The **Page Object Model** is a test automation pattern that aims to create an abstraction of your web app's User Interface that can be used
@@ -727,11 +724,11 @@ To use these **PageManager** methods, include the step definitions and code belo
727
724
 
728
725
  ## Connecting to a Web Browser
729
726
 
730
- The `TestCentricity::WebDriverConnect.initialize_web_driver` method configures the appropriate Selenium-Webdriver capabilities required to establish a
731
- connection with a target web browser, and sets the base host URL of the web site you are running your tests against.
727
+ The `TestCentricity::WebDriverConnect.initialize_web_driver` method configures the appropriate Selenium-Webdriver capabilities required to
728
+ establish a connection with a target web browser, and sets the base host URL of the web site you are running your tests against.
732
729
 
733
- The `TestCentricity::WebDriverConnect.initialize_web_driver` method accepts a single optional parameter - the base host URL. Cucumber **Environment
734
- Variables** are used to specify the target local or remote web browser, and the various webdriver capability parameters required to configure
730
+ The `TestCentricity::WebDriverConnect.initialize_web_driver` method accepts a single optional parameter - the base host URL. Cucumber
731
+ **Environment Variables** are used to specify the target local or remote web browser, and the various webdriver capability parameters required to configure
735
732
  the connection.
736
733
 
737
734
 
@@ -740,14 +737,18 @@ the connection.
740
737
  For locally hosted desktop web browsers running on macOS (OS X) or Windows platforms, the `WEB_BROWSER` Environment Variable must be set to one of the
741
738
  values from the table below:
742
739
 
743
- `WEB_BROWSER` | **Desktop Platform**
744
- -------------------|----------------
745
- `chrome` | OS X or Windows
746
- `chrome_headless` | OS X or Windows (headless - no visible UI)
747
- `firefox` | OS X or Windows (Firefox version 55 or greater only)
748
- `firefox_headless` | OS X or Windows (headless - no visible UI)
749
- `safari` | OS X only
750
- `ie` | Windows only (IE version 10.x or greater only)
740
+ | `WEB_BROWSER` | **Desktop Platform** |
741
+ |--------------------|------------------------------------------------|
742
+ | `chrome` | OS X or Windows |
743
+ | `chrome_headless` | OS X or Windows (headless - no visible UI) |
744
+ | `firefox` | OS X or Windows |
745
+ | `firefox_headless` | OS X or Windows (headless - no visible UI) |
746
+ | `edge` | OS X or Windows |
747
+ | `edge_headless` | OS X or Windows (headless - no visible UI) |
748
+ | `safari` | OS X only |
749
+ | `ie` | Windows only (IE version 10.x or greater only) |
750
+
751
+ Refer to **section 8.7 (Using Browser specific Profiles in cucumber.yml)** below.
751
752
 
752
753
 
753
754
  #### Setting desktop browser window size
@@ -813,63 +814,65 @@ Windows. The specified mobile browser's user agent, CSS screen dimensions, and d
813
814
  local Chrome browser instance. You may even specify the emulated device's screen orientation. For locally hosted emulated mobile web browsers,
814
815
  the `WEB_BROWSER` Environment Variable must be set to one of the values from the table below:
815
816
 
816
- `WEB_BROWSER` | `HOST_BROWSER` | **CSS Screen Dimensions** | **Default Orientation** | **OS Version**
817
- ----------------------|----------------|---------------------------|-------------------------|---------------
818
- `ipad` |`chrome` |1024 x 768 |landscape |iOS 12
819
- `ipad_pro` |`chrome` |1366 x 1024 |landscape |iOS 12
820
- `ipad_pro_10_5` |`chrome` |1112 x 834 |landscape |iOS 12.2
821
- `ipad_pro_11` |`chrome` |1194 x 834 |landscape |iOS 12.2
822
- `ipad_pro_12_9` |`chrome` |1366 x 1024 |landscape |iOS 13.1
823
- `ipad_chrome` |`chrome` |1024 x 768 |landscape |iOS 12.2 - Mobile Chrome browser for iOS
824
- `ipad_firefox` |`chrome` |1024 x 768 |landscape |iOS 12.2 - Mobile Firefox browser for iOS
825
- `ipad_edge` |`chrome` |1024 x 768 |landscape |iOS 12.2 - Mobile Edge browser for iOS
826
- `android_tablet` |`chrome` |1024 x 768 |landscape |Android 3.0
827
- `kindle_fire` |`chrome` |1024 x 600 |landscape |
828
- `kindle_firehd7` |`chrome` |800 x 480 |landscape |Fire OS 3
829
- `kindle_firehd8` |`chrome` |1280 x 800 |landscape |Fire OS 5
830
- `kindle_firehd10` |`chrome` |1920 x 1200 |landscape |Fire OS 5
831
- `surface` |`chrome` |1366 x 768 |landscape |
832
- `blackberry_playbook` |`chrome` |1024 x 600 |landscape |BlackBerry Tablet OS
833
- `samsung_galaxy_tab` |`chrome` |1280 x 800 |landscape |Android 4.0.4
834
- `google_nexus7` |`chrome` |960 x 600 |landscape |Android 4.4.4
835
- `google_nexus9` |`chrome` |1024 x 768 |landscape |Android 5.1
836
- `google_nexus10` |`chrome` |1280 x 800 |landscape |Android 5.1
837
- `iphone6` |`chrome` |375 x 667 |portrait |iOS 12
838
- `iphone6_plus` |`chrome` |414 x 736 |portrait |iOS 12
839
- `iphone7` |`chrome` |375 x 667 |portrait |iOS 12
840
- `iphone7_plus` |`chrome` |414 x 736 |portrait |iOS 12
841
- `iphone7_chrome` |`chrome` |375 x 667 |portrait |iOS 12.2 - Mobile Chrome browser for iOS
842
- `iphone7_firefox` |`chrome` |375 x 667 |portrait |iOS 12.2 - Mobile Firefox browser for iOS
843
- `iphone7_edge` |`chrome` |375 x 667 |portrait |iOS 12.2 - Microsoft Edge browser for iOS
844
- `iphone8` |`chrome` |375 x 667 |portrait |iOS 12
845
- `iphone8_plus` |`chrome` |414 x 736 |portrait |iOS 12
846
- `iphone_x` |`chrome` |375 x 812 |portrait |iOS 12.2
847
- `iphone_xr` |`chrome` |414 x 896 |portrait |iOS 12.2
848
- `iphone_xs` |`chrome` |375 x 812 |portrait |iOS 12.2
849
- `iphone_xs_max` |`chrome` |414 x 896 |portrait |iOS 12.2
850
- `iphone_11` |`chrome` |414 x 896 |portrait |iOS 13.1
851
- `iphone_11_pro` |`chrome` |375 x 812 |portrait |iOS 13.1
852
- `iphone_11_pro_max` |`chrome` |414 x 896 |portrait |iOS 13.1
853
- `android_phone` |`chrome` |360 x 640 |portrait |Android 4.2.1
854
- `nexus6` |`chrome` |411 x 731 |portrait |Android 6
855
- `pixel` |`chrome` |411 x 731 |portrait |Android 8
856
- `pixel_xl` |`chrome` |411 x 731 |portrait |Android 8
857
- `samsung_galaxy_s4` |`chrome` |360 x 640 |portrait |Android 5.0.1
858
- `samsung_galaxy_s5` |`chrome` |360 x 640 |portrait |Android 6.0.1
859
- `samsung_galaxy_s6` |`chrome` |360 x 640 |portrait |Android 6.0.1
860
- `windows_phone7` |`chrome` |320 x 480 |portrait |Windows Phone OS 7.5
861
- `windows_phone8` |`chrome` |320 x 480 |portrait |Windows Phone OS 8.0
862
- `lumia_950_xl` |`chrome` |360 x 640 |portrait |Windows Phone OS 10
863
- `blackberry_z10` |`chrome` |384 x 640 |portrait |BlackBerry 10 OS
864
- `blackberry_z30` |`chrome` |360 x 640 |portrait |BlackBerry 10 OS
865
- `blackberry_leap` |`chrome` |360 x 640 |portrait |BlackBerry 10 OS
866
- `blackberry_passport` |`chrome` |504 x 504 |square |BlackBerry 10 OS
817
+ | `WEB_BROWSER` | `HOST_BROWSER` | **CSS Screen Dimensions** | **Default Orientation** | **OS Version** |
818
+ |-----------------------|----------------|---------------------------|-------------------------|-------------------------------------------|
819
+ | `ipad` | `chrome` | 1024 x 768 | landscape | iOS 12 |
820
+ | `ipad_pro` | `chrome` | 1366 x 1024 | landscape | iOS 12 |
821
+ | `ipad_pro_10_5` | `chrome` | 1112 x 834 | landscape | iOS 12.2 |
822
+ | `ipad_pro_11` | `chrome` | 1194 x 834 | landscape | iOS 12.2 |
823
+ | `ipad_pro_12_9` | `chrome` | 1366 x 1024 | landscape | iOS 13.1 |
824
+ | `ipad_chrome` | `chrome` | 1024 x 768 | landscape | iOS 12.2 - Mobile Chrome browser for iOS |
825
+ | `ipad_firefox` | `chrome` | 1024 x 768 | landscape | iOS 12.2 - Mobile Firefox browser for iOS |
826
+ | `ipad_edge` | `chrome` | 1024 x 768 | landscape | iOS 12.2 - Mobile Edge browser for iOS |
827
+ | `android_tablet` | `chrome` | 1024 x 768 | landscape | Android 3.0 |
828
+ | `kindle_fire` | `chrome` | 1024 x 600 | landscape | |
829
+ | `kindle_firehd7` | `chrome` | 800 x 480 | landscape | Fire OS 3 |
830
+ | `kindle_firehd8` | `chrome` | 1280 x 800 | landscape | Fire OS 5 |
831
+ | `kindle_firehd10` | `chrome` | 1920 x 1200 | landscape | Fire OS 5 |
832
+ | `surface` | `chrome` | 1366 x 768 | landscape | |
833
+ | `blackberry_playbook` | `chrome` | 1024 x 600 | landscape | BlackBerry Tablet OS |
834
+ | `samsung_galaxy_tab` | `chrome` | 1280 x 800 | landscape | Android 4.0.4 |
835
+ | `google_nexus7` | `chrome` | 960 x 600 | landscape | Android 4.4.4 |
836
+ | `google_nexus9` | `chrome` | 1024 x 768 | landscape | Android 5.1 |
837
+ | `google_nexus10` | `chrome` | 1280 x 800 | landscape | Android 5.1 |
838
+ | `iphone6` | `chrome` | 375 x 667 | portrait | iOS 12 |
839
+ | `iphone6_plus` | `chrome` | 414 x 736 | portrait | iOS 12 |
840
+ | `iphone7` | `chrome` | 375 x 667 | portrait | iOS 12 |
841
+ | `iphone7_plus` | `chrome` | 414 x 736 | portrait | iOS 12 |
842
+ | `iphone7_chrome` | `chrome` | 375 x 667 | portrait | iOS 12.2 - Mobile Chrome browser for iOS |
843
+ | `iphone7_firefox` | `chrome` | 375 x 667 | portrait | iOS 12.2 - Mobile Firefox browser for iOS |
844
+ | `iphone7_edge` | `chrome` | 375 x 667 | portrait | iOS 12.2 - Microsoft Edge browser for iOS |
845
+ | `iphone8` | `chrome` | 375 x 667 | portrait | iOS 12 |
846
+ | `iphone8_plus` | `chrome` | 414 x 736 | portrait | iOS 12 |
847
+ | `iphone_x` | `chrome` | 375 x 812 | portrait | iOS 12.2 |
848
+ | `iphone_xr` | `chrome` | 414 x 896 | portrait | iOS 12.2 |
849
+ | `iphone_xs` | `chrome` | 375 x 812 | portrait | iOS 12.2 |
850
+ | `iphone_xs_max` | `chrome` | 414 x 896 | portrait | iOS 12.2 |
851
+ | `iphone_11` | `chrome` | 414 x 896 | portrait | iOS 13.1 |
852
+ | `iphone_11_pro` | `chrome` | 375 x 812 | portrait | iOS 13.1 |
853
+ | `iphone_11_pro_max` | `chrome` | 414 x 896 | portrait | iOS 13.1 |
854
+ | `android_phone` | `chrome` | 360 x 640 | portrait | Android 4.2.1 |
855
+ | `nexus6` | `chrome` | 411 x 731 | portrait | Android 6 |
856
+ | `pixel` | `chrome` | 411 x 731 | portrait | Android 8 |
857
+ | `pixel_xl` | `chrome` | 411 x 731 | portrait | Android 8 |
858
+ | `samsung_galaxy_s4` | `chrome` | 360 x 640 | portrait | Android 5.0.1 |
859
+ | `samsung_galaxy_s5` | `chrome` | 360 x 640 | portrait | Android 6.0.1 |
860
+ | `samsung_galaxy_s6` | `chrome` | 360 x 640 | portrait | Android 6.0.1 |
861
+ | `windows_phone7` | `chrome` | 320 x 480 | portrait | Windows Phone OS 7.5 |
862
+ | `windows_phone8` | `chrome` | 320 x 480 | portrait | Windows Phone OS 8.0 |
863
+ | `lumia_950_xl` | `chrome` | 360 x 640 | portrait | Windows Phone OS 10 |
864
+ | `blackberry_z10` | `chrome` | 384 x 640 | portrait | BlackBerry 10 OS |
865
+ | `blackberry_z30` | `chrome` | 360 x 640 | portrait | BlackBerry 10 OS |
866
+ | `blackberry_leap` | `chrome` | 360 x 640 | portrait | BlackBerry 10 OS |
867
+ | `blackberry_passport` | `chrome` | 504 x 504 | square | BlackBerry 10 OS |
867
868
 
868
869
  To change the emulated device's screen orientation from the default setting, set the `ORIENTATION` Environment Variable to either `portrait` or `landscape`.
869
870
 
870
871
  To use a local instance of the Chrome desktop browser to host the emulated mobile web browser, you must set the `HOST_BROWSER` Environment Variable
871
872
  to `chrome`.
872
873
 
874
+ Refer to **section 8.7 (Using Browser specific Profiles in cucumber.yml)** below.
875
+
873
876
 
874
877
  #### User defined mobile device profiles
875
878
 
@@ -903,16 +906,17 @@ The format for a new device profile is:
903
906
  :user_agent: "user agent string"
904
907
  ```
905
908
 
906
- ### Selenium Grid and Dockerized Selenium Grid hosted desktop and emulated mobile web browsers
909
+ ### Selenium Grid 4 and Dockerized Selenium Grid 4 hosted desktop and emulated mobile web browsers
907
910
 
908
- For desktop and emulated mobile web browsers running on Selenium Grid or Dockerized Selenium Grid environments ([like Zalenium](https://opensource.zalando.com/zalenium/)), the following **Environment Variables** must be set
909
- as described in the table below.
911
+ For remote desktop and emulated mobile web browsers running on Selenium Grid 4 or Dockerized Selenium Grid 4 environments as described in the table below.
910
912
 
911
- **Environment Variable** | **Description**
912
- --------------- | ----------------
913
- `WEB_BROWSER` | Must be set to one of the following desktop browsers - `chrome`, `chrome_headless`, or `firefox`, or any of the mobile web browsers described above.
914
- `SELENIUM` | Must be set to `remote`
915
- `REMOTE_ENDPOINT` | Must be set to the URL of the Grid hub, which is usually `http://localhost:4444/wd/hub`
913
+ | **Environment Variable** | **Description** |
914
+ |--------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
915
+ | `WEB_BROWSER` | Must be set to one of the following desktop browsers - `chrome`, `chrome_headless`, `edge`, `edge_headless`, or `firefox`, or any of the mobile web browsers described above. |
916
+ | `SELENIUM` | Must be set to `remote` |
917
+ | `REMOTE_ENDPOINT` | Must be set to the URL of the Grid hub, which is usually `http://localhost:4444/wd/hub` |
918
+
919
+ Refer to **section 8.7 (Using Browser specific Profiles in cucumber.yml)** below.
916
920
 
917
921
 
918
922
  ### Mobile Safari browser on iOS Simulators or iOS Physical Devices
@@ -926,27 +930,31 @@ The Appium server must be running prior to invoking Cucumber to run your feature
926
930
 
927
931
  Once your test environment is properly configured, the following **Environment Variables** must be set as described in the table below.
928
932
 
929
- **Environment Variable** | **Description**
930
- --------------- | ----------------
931
- `WEB_BROWSER` | Must be set to `appium`
932
- `APP_PLATFORM_NAME` | Must be set to `iOS`
933
- `APP_BROWSER` | Must be set to `Safari`
934
- `APP_VERSION` | Must be set to `12.2`, `11.4`, `10.3.1`, or which ever iOS version you wish to run within the XCode Simulator
935
- `APP_DEVICE` | Set to iOS device name supported by the iOS Simulator (`iPhone 6s Plus`, `iPad Pro (10.5-inch)`, `iPad Air 2`, etc.) or name of physically connected iOS device
936
- `DEVICE_TYPE` | Must be set to `phone` or `tablet`
937
- `APP_UDID` | UDID of physically connected iOS device (not used for simulators)
938
- `TEAM_ID` | unique 10-character Apple developer team identifier string (not used for simulators)
939
- `TEAM_NAME` | String representing a signing certificate (not used for simulators)
940
- `APP_ALLOW_POPUPS` | [Optional] Allow javascript to open new windows in Safari. Set to `true` or `false`
941
- `APP_IGNORE_FRAUD_WARNING` | [Optional] Prevent Safari from showing a fraudulent website warning. Set to `true` or `false`
942
- `APP_NO_RESET` | [Optional] Don't reset app state after each test. Set to `true` or `false`
943
- `APP_FULL_RESET` | [Optional] Perform a complete reset. Set to `true` or `false`
944
- `APP_INITIAL_URL` | [Optional] Initial URL, default is a local welcome page. e.g. `http://www.apple.com`
945
- `WDA_LOCAL_PORT` | [Optional] Used to forward traffic from Mac host to real iOS devices over USB. Default value is same as port number used by WDA on device.
946
- `LOCALE` | [Optional] Locale to set for the simulator. e.g. `fr_CA`
947
- `LANGUAGE` | [Optional] Language to set for the simulator. e.g. `fr`
948
- `ORIENTATION` | [Optional] Set to `portrait` or `landscape` (only for iOS simulators)
949
- `NEW_COMMAND_TIMEOUT` | [Optional] Time (in Seconds) that Appium will wait for a new command from the client
933
+ | **Environment Variable** | **Description** |
934
+ |----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
935
+ | `WEB_BROWSER` | Must be set to `appium` |
936
+ | `APP_PLATFORM_NAME` | Must be set to `iOS` |
937
+ | `APP_BROWSER` | Must be set to `Safari` |
938
+ | `APP_VERSION` | Must be set to `12.2`, `11.4`, `10.3.1`, or which ever iOS version you wish to run within the XCode Simulator |
939
+ | `APP_DEVICE` | Set to iOS device name supported by the iOS Simulator (`iPhone 6s Plus`, `iPad Pro (10.5-inch)`, `iPad Air 2`, etc.) or name of physically connected iOS device |
940
+ | `DEVICE_TYPE` | Must be set to `phone` or `tablet` |
941
+ | `APP_UDID` | UDID of physically connected iOS device (not used for simulators) |
942
+ | `TEAM_ID` | unique 10-character Apple developer team identifier string (not used for simulators) |
943
+ | `TEAM_NAME` | String representing a signing certificate (not used for simulators) |
944
+ | `APP_ALLOW_POPUPS` | [Optional] Allow javascript to open new windows in Safari. Set to `true` or `false` |
945
+ | `APP_IGNORE_FRAUD_WARNING` | [Optional] Prevent Safari from showing a fraudulent website warning. Set to `true` or `false` |
946
+ | `APP_NO_RESET` | [Optional] Don't reset app state after each test. Set to `true` or `false` |
947
+ | `APP_FULL_RESET` | [Optional] Perform a complete reset. Set to `true` or `false` |
948
+ | `APP_INITIAL_URL` | [Optional] Initial URL, default is a local welcome page. e.g. `http://www.apple.com` |
949
+ | `WDA_LOCAL_PORT` | [Optional] Used to forward traffic from Mac host to real iOS devices over USB. Default value is same as port number used by WDA on device. |
950
+ | `LOCALE` | [Optional] Locale to set for the simulator. e.g. `fr_CA` |
951
+ | `LANGUAGE` | [Optional] Language to set for the simulator. e.g. `fr` |
952
+ | `ORIENTATION` | [Optional] Set to `portrait` or `landscape` (only for iOS simulators) |
953
+ | `NEW_COMMAND_TIMEOUT` | [Optional] Time (in Seconds) that Appium will wait for a new command from the client |
954
+ | `SHOW_SIM_KEYBOARD` | [Optional] Show the simulator keyboard during text entry. Set to `true` or `false` |
955
+ | `SHUTDOWN_OTHER_SIMS` | [Optional] Close any other running simulators. Set to `true` or `false` |
956
+
957
+ Refer to **section 8.7 (Using Browser specific Profiles in cucumber.yml)** below.
950
958
 
951
959
 
952
960
  ### Mobile Chrome or Android browsers on Android Studio Virtual Device emulators
@@ -961,57 +969,59 @@ for information on configuring Appium to use the correct version of Chromedriver
961
969
 
962
970
  Once your test environment is properly configured, the following **Environment Variables** must be set as described in the table below.
963
971
 
964
- **Environment Variable** | **Description**
965
- --------------- | ----------------
966
- `WEB_BROWSER` | Must be set to `appium`
967
- `APP_PLATFORM_NAME` | Must be set to `Android`
968
- `APP_BROWSER` | Must be set to `Chrome` or `Browser`
969
- `APP_VERSION` | Must be set to `8.0`, `7.0`, or which ever Android OS version you wish to run with the Android Virtual Device
970
- `APP_DEVICE` | Set to Android Virtual Device ID (`Pixel_2_XL_API_26`, `Nexus_6_API_23`, etc.) found in Advanced Settings of AVD Configuration
971
- `DEVICE_TYPE` | Must be set to `phone` or `tablet`
972
- `ORIENTATION` | [Optional] Set to `portrait` or `landscape`
973
- `APP_INITIAL_URL` | [Optional] Initial URL, default is a local welcome page. e.g. `http://www.apple.com`
974
- `APP_NO_RESET` | [Optional] Don't reset app state after each test. Set to `true` or `false`
975
- `APP_FULL_RESET` | [Optional] Perform a complete reset. Set to `true` or `false`
976
- `LOCALE` | [Optional] Locale to set for the simulator. e.g. `fr_CA`
977
- `LANGUAGE` | [Optional] Language to set for the simulator. e.g. `fr`
978
- `NEW_COMMAND_TIMEOUT` | [Optional] Time (in Seconds) that Appium will wait for a new command from the client
979
- `CHROMEDRIVER_EXECUTABLE` | [Optional] Absolute local path to webdriver executable
972
+ | **Environment Variable** | **Description** |
973
+ |---------------------------|--------------------------------------------------------------------------------------------------------------------------------|
974
+ | `WEB_BROWSER` | Must be set to `appium` |
975
+ | `APP_PLATFORM_NAME` | Must be set to `Android` |
976
+ | `APP_BROWSER` | Must be set to `Chrome` or `Browser` |
977
+ | `APP_VERSION` | Must be set to `8.0`, `7.0`, or which ever Android OS version you wish to run with the Android Virtual Device |
978
+ | `APP_DEVICE` | Set to Android Virtual Device ID (`Pixel_2_XL_API_26`, `Nexus_6_API_23`, etc.) found in Advanced Settings of AVD Configuration |
979
+ | `DEVICE_TYPE` | Must be set to `phone` or `tablet` |
980
+ | `ORIENTATION` | [Optional] Set to `portrait` or `landscape` |
981
+ | `APP_INITIAL_URL` | [Optional] Initial URL, default is a local welcome page. e.g. `http://www.apple.com` |
982
+ | `APP_NO_RESET` | [Optional] Don't reset app state after each test. Set to `true` or `false` |
983
+ | `APP_FULL_RESET` | [Optional] Perform a complete reset. Set to `true` or `false` |
984
+ | `LOCALE` | [Optional] Locale to set for the simulator. e.g. `fr_CA` |
985
+ | `LANGUAGE` | [Optional] Language to set for the simulator. e.g. `fr` |
986
+ | `NEW_COMMAND_TIMEOUT` | [Optional] Time (in Seconds) that Appium will wait for a new command from the client |
987
+ | `CHROMEDRIVER_EXECUTABLE` | [Optional] Absolute local path to webdriver executable |
988
+
989
+ Refer to **section 8.7 (Using Browser specific Profiles in cucumber.yml)** below.
980
990
 
981
991
 
982
992
  ### Remotely hosted desktop and mobile web browsers
983
993
 
984
- You can run your automated tests against remotely hosted desktop and mobile web browsers using the BrowserStack, CrossBrowserTesting,
985
- Sauce Labs, TestingBot, Gridlastic, or LambdaTest services. If your tests are running against a web site hosted on your local computer
986
- (`localhost`), or on a staging server inside your LAN, you must set the `TUNNELING` Environment Variable to `true`.
994
+ You can run your automated tests against remotely hosted desktop and mobile web browsers using the BrowserStack, SauceLabs, TestingBot, or
995
+ LambdaTest services. If your tests are running against a web site hosted on your local computer (`localhost`), or on a staging server inside
996
+ your LAN, you must set the `TUNNELING` Environment Variable to `true`.
997
+
998
+ Refer to **section 8.7 (Using Browser specific Profiles in cucumber.yml)** below.
987
999
 
988
1000
 
989
1001
  #### Remote desktop browsers on the BrowserStack service
990
1002
 
991
1003
  For remotely hosted desktop web browsers on the BrowserStack service, the following **Environment Variables** must be set as described in
992
- the table below. Refer to the [Browserstack-specific capabilities chart page](https://www.browserstack.com/automate/capabilities)
1004
+ the table below. Refer to the [Browserstack-specific capabilities chart page](https://www.browserstack.com/automate/capabilities?tag=selenium-4)
993
1005
  for information regarding the specific capabilities.
994
1006
 
995
- **Environment Variable** | **Description**
996
- ------------------ | ----------------
997
- `WEB_BROWSER` | Must be set to `browserstack`
998
- `BS_USERNAME` | Must be set to your BrowserStack account user name
999
- `BS_AUTHKEY` | Must be set to your BrowserStack account access key
1000
- `BS_OS` | Must be set to `OS X` or `Windows`
1001
- `BS_OS_VERSION` | Refer to `os_version` capability in chart
1002
- `BS_BROWSER` | Refer to `browser` capability in chart
1003
- `BS_VERSION` | [Optional] Refer to `browser_version` capability in chart. If not specified, latest stable version of browser will be used.
1004
- `TUNNELING` | Must be `true` if you are testing against internal/local servers (`true` or `false`). If `true`, the BrowserStack Local instance will be automatically started.
1005
- `RESOLUTION` | [Optional] Refer to supported screen `resolution` capability in chart
1006
- `BROWSER_SIZE` | [Optional] Specify width, height of browser window
1007
- `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`)
1008
- `TIME_ZONE` | [Optional] Specify custom time zone. Refer to `browserstack.timezone` capability in chart
1009
- `IP_GEOLOCATION` | [Optional] Specify IP Geolocation. Refer to [IP Geolocation](https://www.browserstack.com/ip-geolocation) to select a country code.
1010
- `SELENIUM_VERSION` | [Optional] Specify Selenium WebDriver version to use
1011
- `CONSOLE_LOGS` | [Optional] Used to capture browser console logs. Refer to `browserstack.console` capability in chart
1012
- `WD_VERSION` | [Optional] Specify browser-specific WebDriver version to use. Refer to `browserstack.geckodriver`, `browserstack.ie.driver`, and `browserstack.safari.driver` capabilities in chart
1013
- `ALLOW_POPUPS` | [Optional] Allow popups (`true` or `false`) - for Safari, IE, and Edge browsers only
1014
- `ALLOW_COOKIES` | [Optional] Allow all cookies (`true` or `false`) - for Safari browsers only
1007
+ | **Environment Variable** | **Description** |
1008
+ |--------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
1009
+ | `WEB_BROWSER` | Must be set to `browserstack` |
1010
+ | `BS_USERNAME` | Must be set to your BrowserStack account user name |
1011
+ | `BS_AUTHKEY` | Must be set to your BrowserStack account access key |
1012
+ | `BS_OS` | Must be set to `OS X` or `Windows` |
1013
+ | `BS_OS_VERSION` | Refer to `os_version` capability in chart |
1014
+ | `BS_BROWSER` | Refer to `browser` capability in chart |
1015
+ | `BS_VERSION` | [Optional] Refer to `browser_version` capability in chart. If not specified, latest stable version of browser will be used. |
1016
+ | `TUNNELING` | Must be `true` if you are testing against internal/local servers (`true` or `false`). If `true`, the BrowserStack Local instance will be automatically started. |
1017
+ | `RESOLUTION` | [Optional] Refer to supported screen `resolution` capability in chart |
1018
+ | `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`) |
1019
+ | `TIME_ZONE` | [Optional] Specify custom time zone. Refer to `browserstack.timezone` capability in chart |
1020
+ | `IP_GEOLOCATION` | [Optional] Specify IP Geolocation. Refer to [IP Geolocation](https://www.browserstack.com/ip-geolocation) to select a country code. |
1021
+ | `ALLOW_POPUPS` | [Optional] Allow popups (`true` or `false`) - for Safari, IE, and Edge browsers only |
1022
+ | `ALLOW_COOKIES` | [Optional] Allow all cookies (`true` or `false`) - for Safari browsers only |
1023
+ | `SCREENSHOTS` | [Optional] Generate screenshots for debugging (`true` or `false`) |
1024
+ | `NETWORK_LOGS` | [Optional] Capture network logs (`true` or `false`) |
1015
1025
 
1016
1026
  If the BrowserStack Local instance is running (`TUNNELING` Environment Variable is `true`), call the`TestCentricity::WebDriverConnect.close_tunnel` method
1017
1027
  upon completion of your test suite to stop the Local instance. Place the code shown below in your `env.rb` or `hooks.rb` file.
@@ -1025,65 +1035,27 @@ upon completion of your test suite to stop the Local instance. Place the code sh
1025
1035
  #### Remote mobile browsers on the BrowserStack service
1026
1036
 
1027
1037
  For remotely hosted mobile web browsers on the BrowserStack service, the following **Environment Variables** must be set as described in
1028
- the table below. Refer to the [Browserstack-specific capabilities chart page](https://www.browserstack.com/automate/capabilities)
1038
+ the table below. Refer to the [Browserstack-specific capabilities chart page](https://www.browserstack.com/automate/capabilities?tag=selenium-4)
1029
1039
  for information regarding the specific capabilities.
1030
1040
 
1031
- **Environment Variable** | **Description**
1032
- --------------- | ----------------
1033
- `WEB_BROWSER` | Must be set to `browserstack`
1034
- `BS_USERNAME` | Must be set to your BrowserStack account user name
1035
- `BS_AUTHKEY` | Must be set to your BrowserStack account access key
1036
- `BS_OS` | Must be set to `ios` or `android`
1037
- `BS_BROWSER` | Must be set to `iPhone`, `iPad`, or `android`
1038
- `BS_PLATFORM` | Must be set to `MAC` (for iOS) or `ANDROID`
1039
- `BS_DEVICE` | Refer to `device` capability in chart
1040
- `BS_REAL_MOBILE` | Set to `true` if running against a real device
1041
- `DEVICE_TYPE` | Must be set to `phone` or `tablet`
1042
- `TUNNELING` | Must be `true` if you are testing against internal/local servers (`true` or `false`). If `true`, the BrowserStack Local instance will be automatically started.
1043
- `ORIENTATION` | [Optional] Set to `portrait` or `landscape`
1044
- `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`)
1045
- `TIME_ZONE` | [Optional] Specify custom time zone. Refer to `browserstack.timezone` capability in chart
1046
- `IP_GEOLOCATION` | [Optional] Specify IP Geolocation. Refer to [IP Geolocation](https://www.browserstack.com/ip-geolocation) to select a country code.
1047
- `CONSOLE_LOGS` | [Optional] Used to capture browser console logs. Refer to `browserstack.console` capability in chart
1048
-
1049
-
1050
-
1051
- #### Remote desktop browsers on the CrossBrowserTesting service
1052
-
1053
- For remotely hosted desktop web browsers on the CrossBrowserTesting service, the following **Environment Variables** must be set as described in
1054
- the table below. Use the Configuration Wizard on the [Start a Selenium Test page](https://app.crossbrowsertesting.com/selenium/run) to obtain
1055
- information regarding the specific capabilities.
1056
-
1057
- **Environment Variable** | **Description**
1058
- --------------- | ----------------
1059
- `WEB_BROWSER` | Must be set to `crossbrowser`
1060
- `CB_USERNAME` | Must be set to your CrossBrowserTesting account user name or email address
1061
- `CB_AUTHKEY` | Must be set to your CrossBrowserTesting account access key
1062
- `CB_OS` | Refer to `os_api_name` capability in the sample script of the Wizard
1063
- `CB_BROWSER` | Refer to `browser_api_name` capability in the sample script of the Wizard
1064
- `RESOLUTION` | [Optional] Refer to supported `screen_resolution` capability in the sample script of the Wizard
1065
- `BROWSER_SIZE` | [Optional] Specify width, height of browser window
1066
- `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`)
1067
-
1068
-
1069
- #### Remote mobile browsers on the CrossBrowserTesting service
1070
-
1071
- For remotely hosted mobile web browsers on the CrossBrowserTesting service, the following **Environment Variables** must be set as described in
1072
- the table below. Use the Configuration Wizard on the [Start a Selenium Test page](https://app.crossbrowsertesting.com/selenium/run) to obtain
1073
- information regarding the specific capabilities.
1074
-
1075
- **Environment Variable** | **Description**
1076
- --------------- | ----------------
1077
- `WEB_BROWSER` | Must be set to `crossbrowser`
1078
- `CB_USERNAME` | Must be set to your CrossBrowserTesting account user name or email address
1079
- `CB_AUTHKEY` | Must be set to your CrossBrowserTesting account access key
1080
- `CB_PLATFORM` | Refer to `os_api_name` capability in the sample script of the Wizard
1081
- `CB_BROWSER` | Refer to `browser_api_name` capability in the sample script of the Wizard
1082
- `RESOLUTION` | Refer to supported `screen_resolution` capability in the sample script of the Wizard
1083
- `DEVICE_TYPE` | Must be set to `phone` or `tablet`
1084
- `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`)
1085
-
1086
-
1041
+ | **Environment Variable** | **Description** |
1042
+ |--------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
1043
+ | `WEB_BROWSER` | Must be set to `browserstack` |
1044
+ | `BS_USERNAME` | Must be set to your BrowserStack account user name |
1045
+ | `BS_AUTHKEY` | Must be set to your BrowserStack account access key |
1046
+ | `BS_OS` | Must be set to `ios` or `android` |
1047
+ | `BS_BROWSER` | Must be set to `Safari` (for iOS) or `Chrome` (for Android) |
1048
+ | `BS_DEVICE` | Refer to `device` capability in chart |
1049
+ | `BS_REAL_MOBILE` | Set to `true` if running against a real device |
1050
+ | `DEVICE_TYPE` | Must be set to `phone` or `tablet` |
1051
+ | `TUNNELING` | Must be `true` if you are testing against internal/local servers (`true` or `false`). If `true`, the BrowserStack Local instance will be automatically started. |
1052
+ | `ORIENTATION` | [Optional] Set to `portrait` or `landscape` |
1053
+ | `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`) |
1054
+ | `TIME_ZONE` | [Optional] Specify custom time zone. Refer to `browserstack.timezone` capability in chart |
1055
+ | `IP_GEOLOCATION` | [Optional] Specify IP Geolocation. Refer to [IP Geolocation](https://www.browserstack.com/ip-geolocation) to select a country code. |
1056
+ | `SCREENSHOTS` | [Optional] Generate screenshots for debugging (`true` or `false`) |
1057
+ | `NETWORK_LOGS` | [Optional] Capture network logs (`true` or `false`) |
1058
+ | `APPIUM_LOGS` | [Optional] Generate Appium logs (`true` or `false`) |
1087
1059
 
1088
1060
  #### Remote desktop browsers on the Sauce Labs service
1089
1061
 
@@ -1091,18 +1063,18 @@ For remotely hosted desktop web browsers on the Sauce Labs service, the followin
1091
1063
  the table below. Use the Selenium API on the [Platform Configurator page](https://wiki.saucelabs.com/display/DOCS/Platform+Configurator#/) to obtain
1092
1064
  information regarding the specific capabilities.
1093
1065
 
1094
- **Environment Variable** | **Description**
1095
- --------------- | ----------------
1096
- `WEB_BROWSER` | Must be set to `saucelabs`
1097
- `SL_USERNAME` | Must be set to your Sauce Labs account user name or email address
1098
- `SL_AUTHKEY` | Must be set to your Sauce Labs account access key
1099
- `SL_OS` | Refer to `platform` capability in the Copy Code section of the Platform Configurator page
1100
- `SL_BROWSER` | Must be set to `chrome`, `firefox`, `safari`, `internet explorer`, or `edge`
1101
- `SL_VERSION` | Refer to `version` capability in the Copy Code section of the Platform Configurator page
1102
- `RESOLUTION` | [Optional] Refer to supported `screenResolution` capability in the Copy Code section of the Platform Configurator page
1103
- `BROWSER_SIZE `| [Optional] Specify width, height of browser window
1104
- `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`)
1105
-
1066
+ | **Environment Variable** | **Description** |
1067
+ |--------------------------|------------------------------------------------------------------------------------------------------------------------|
1068
+ | `WEB_BROWSER` | Must be set to `saucelabs` |
1069
+ | `SL_USERNAME` | Must be set to your Sauce Labs account user name or email address |
1070
+ | `SL_AUTHKEY` | Must be set to your Sauce Labs account access key |
1071
+ | `DATA_CENTER` | Must be set to your Sauce Labs account Data Center assignment (`us-west-1`, `eu-central-1`, `apac-southeast-1`) |
1072
+ | `SL_OS` | Refer to `platform` capability in the Copy Code section of the Platform Configurator page |
1073
+ | `SL_BROWSER` | Must be set to `chrome`, `firefox`, `safari`, `internet explorer`, or `edge` |
1074
+ | `SL_VERSION` | Refer to `version` capability in the Copy Code section of the Platform Configurator page |
1075
+ | `RESOLUTION` | [Optional] Refer to supported `screenResolution` capability in the Copy Code section of the Platform Configurator page |
1076
+ | `BROWSER_SIZE ` | [Optional] Specify width, height of browser window |
1077
+ | `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`) |
1106
1078
 
1107
1079
  #### Remote desktop browsers on the TestingBot service
1108
1080
 
@@ -1110,60 +1082,17 @@ For remotely hosted desktop web browsers on the TestingBot service, the followin
1110
1082
  the table below. Refer to the [TestingBot List of Available Browsers page](https://testingbot.com/support/getting-started/browsers.html) for information
1111
1083
  regarding the specific capabilities.
1112
1084
 
1113
- **Environment Variable** | **Description**
1114
- --------------- | ----------------
1115
- `WEB_BROWSER` | Must be set to `testingbot`
1116
- `TB_USERNAME` | Must be set to your TestingBot account user name
1117
- `TB_AUTHKEY` | Must be set to your TestingBot account access key
1118
- `TB_OS` | Refer to `platform` capability in chart
1119
- `TB_BROWSER` | Refer to `browserName` capability in chart
1120
- `TB_VERSION` | Refer to `version` capability in chart
1121
- `TUNNELING` | Must be `true` if you are testing against internal/local servers (`true` or `false`)
1122
- `RESOLUTION` | [Optional] Possible values: `800x600`, `1024x768`, `1280x960`, `1280x1024`, `1600x1200`, `1920x1200`, `2560x1440`
1123
- `BROWSER_SIZE`| [Optional] Specify width, height of browser window
1124
-
1125
-
1126
- #### Remote mobile browsers on the TestingBot service
1127
-
1128
- For remotely hosted mobile web browsers on the TestingBot service, the following **Environment Variables** must be set as described in
1129
- the table below. Refer to the [TestingBot List of Available Browsers page](https://testingbot.com/support/getting-started/browsers.html) for information
1130
- regarding the specific capabilities.
1131
-
1132
- **Environment Variable** | **Description**
1133
- --------------- | ----------------
1134
- `WEB_BROWSER` | Must be set to `testingbot`
1135
- `TB_USERNAME` | Must be set to your TestingBot account user name
1136
- `TB_AUTHKEY` | Must be set to your TestingBot account access key
1137
- `TB_OS` | Must be set to `MAC` (for iOS) or `ANDROID`
1138
- `TB_BROWSER` | Must be set to `safari` (for iOS) or `browser` (for Android)
1139
- `TB_VERSION` | Refer to `version` capability in chart
1140
- `TB_PLATFORM` | Must be set to `iOS` or `ANDROID`
1141
- `TB_DEVICE` | Refer to `deviceName` capability in chart
1142
- `DEVICE_TYPE` | Must be set to `phone` or `tablet`
1143
- `TUNNELING` | Must be `true` if you are testing against internal/local servers (`true` or `false`)
1144
- `ORIENTATION` | [Optional] Set to `portrait` or `landscape`
1145
-
1146
-
1147
- #### Remote desktop browsers on the Gridlastic service
1148
-
1149
- For remotely hosted desktop web browsers on the Gridlastic service, the following **Environment Variables** must be set as described in
1150
- the table below. Refer to the [Gridlastic Selenium Grid Test Environments](https://www.gridlastic.com/test-environments.html) for information
1151
- regarding the specific capabilities.
1152
-
1153
- **Environment Variable** | **Description**
1154
- --------------- | ----------------
1155
- `WEB_BROWSER` | Must be set to `gridlastic`
1156
- `GL_USERNAME` | Must be set to your Gridlastic account user name
1157
- `GL_AUTHKEY` | Must be set to your Gridlastic account access key
1158
- `GL_SUBDOMAIN` | Must be set to your Gridlastic subdomain
1159
- `GL_OS` | Refer to `platform` capability in chart
1160
- `GL_BROWSER` | Refer to `browserName` capability in chart
1161
- `GL_VERSION` | Refer to `version` capability in chart
1162
- `GL_PLATFORM` | Must be set to `windows` when running on Windows operating systems
1163
- `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`)
1164
- `VIDEO_URL` | [Optional] Video Files Location Endpoint URL shown in the **Your Selenium Grid Credentials** section of the Gridlastic Dashboard
1165
-
1166
-
1085
+ | **Environment Variable** | **Description** |
1086
+ |--------------------------|-------------------------------------------------------------------------------------------------------------------|
1087
+ | `WEB_BROWSER` | Must be set to `testingbot` |
1088
+ | `TB_USERNAME` | Must be set to your TestingBot account user name |
1089
+ | `TB_AUTHKEY` | Must be set to your TestingBot account access key |
1090
+ | `TB_OS` | Refer to `platform` capability in chart |
1091
+ | `TB_BROWSER` | Refer to `browserName` capability in chart |
1092
+ | `TB_VERSION` | Refer to `version` capability in chart |
1093
+ | `TUNNELING` | Must be `true` if you are testing against internal/local servers (`true` or `false`) |
1094
+ | `RESOLUTION` | [Optional] Possible values: `800x600`, `1024x768`, `1280x960`, `1280x1024`, `1600x1200`, `1920x1200`, `2560x1440` |
1095
+ | `BROWSER_SIZE` | [Optional] Specify width, height of browser window |
1167
1096
 
1168
1097
  #### Remote desktop browsers on the LambdaTest service
1169
1098
 
@@ -1171,21 +1100,20 @@ For remotely hosted desktop web browsers on the LambdaTest service, the followin
1171
1100
  below. Use the Configuration Wizard on the [Selenium Desired Capabilities Generator](https://www.lambdatest.com/capabilities-generator/) to obtain
1172
1101
  information regarding the specific capabilities.
1173
1102
 
1174
- **Environment Variable** | **Description**
1175
- --------------- | ----------------
1176
- `WEB_BROWSER` | Must be set to `lambdatest`
1177
- `LT_USERNAME` | Must be set to your LambdaTest account user name or email address
1178
- `LT_AUTHKEY` | Must be set to your LambdaTest account access key
1179
- `LT_OS` | Refer to `platform` capability in the sample script of the Wizard
1180
- `LT_BROWSER` | Refer to `browserName` capability in the sample script of the Wizard
1181
- `LT_VERSION` | Refer to `version` capability in chart
1182
- `RESOLUTION` | [Optional] Refer to supported `resolution` capability in the sample script of the Wizard
1183
- `BROWSER_SIZE` | [Optional] Specify width, height of browser window
1184
- `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`)
1185
- `ALLOW_POPUPS` | [Optional] Allow popups (`true` or `false`) - for Safari, IE, and Edge browsers only
1186
- `ALLOW_COOKIES` | [Optional] Allow all cookies (`true` or `false`) - for Safari browsers only
1187
- `CONSOLE_LOGS` | [Optional] Used to capture browser console logs.
1188
-
1103
+ | **Environment Variable** | **Description** |
1104
+ |--------------------------|------------------------------------------------------------------------------------------|
1105
+ | `WEB_BROWSER` | Must be set to `lambdatest` |
1106
+ | `LT_USERNAME` | Must be set to your LambdaTest account user name or email address |
1107
+ | `LT_AUTHKEY` | Must be set to your LambdaTest account access key |
1108
+ | `LT_OS` | Refer to `platform` capability in the sample script of the Wizard |
1109
+ | `LT_BROWSER` | Refer to `browserName` capability in the sample script of the Wizard |
1110
+ | `LT_VERSION` | Refer to `version` capability in chart |
1111
+ | `RESOLUTION` | [Optional] Refer to supported `resolution` capability in the sample script of the Wizard |
1112
+ | `BROWSER_SIZE` | [Optional] Specify width, height of browser window |
1113
+ | `RECORD_VIDEO` | [Optional] Enable screen video recording during test execution (`true` or `false`) |
1114
+ | `ALLOW_POPUPS` | [Optional] Allow popups (`true` or `false`) - for Safari, IE, and Edge browsers only |
1115
+ | `ALLOW_COOKIES` | [Optional] Allow all cookies (`true` or `false`) - for Safari browsers only |
1116
+ | `CONSOLE_LOGS` | [Optional] Used to capture browser console logs. |
1189
1117
 
1190
1118
  ### Using Browser specific Profiles in cucumber.yml
1191
1119
 
@@ -1194,10 +1122,9 @@ target web browsers is to create browser specific **Profiles** that set the appr
1194
1122
  in your `cucumber.yml` file.
1195
1123
 
1196
1124
  Below is a list of Cucumber **Profiles** for supported locally and remotely hosted desktop and mobile web browsers (put these in in your
1197
- `cucumber.yml` file). Before you can use the BrowserStack, CrossBrowserTesting, Sauce Labs, TestingBot, Gridlastic or LambdaTest services, you
1198
- will need to replace the *INSERT USER NAME HERE* and *INSERT PASSWORD HERE* placeholder text with your user account and authorization code for
1199
- the cloud service(s) that you intend to connect with. When using the Gridlastic service, you will also need replace the *INSERT SUBDOMAIN HERE*
1200
- placeholder text with the Subdomain specified on the Grid Configuration Parameters section of the Gridlastic Dashboard.
1125
+ `cucumber.yml` file). Before you can use the BrowserStack, SauceLabs, TestingBot or LambdaTest services, you will need to replace the
1126
+ *INSERT USER NAME HERE* and *INSERT PASSWORD HERE* placeholder text with your user account and authorization code for the cloud service(s)
1127
+ that you intend to connect with.
1201
1128
 
1202
1129
 
1203
1130
  <% desktop = "--tags @desktop --require features BROWSER_TILE=true BROWSER_SIZE=1500,1000" %>
@@ -1444,62 +1371,6 @@ placeholder text with the Subdomain specified on the Grid Configuration Paramete
1444
1371
  bs_nexus9: --profile bs_android_device BS_DEVICE="Google Nexus 9" DEVICE_TYPE=tablet
1445
1372
 
1446
1373
 
1447
- #==============
1448
- # profiles for remotely hosted web browsers on the CrossBrowserTesting service
1449
- #==============
1450
-
1451
- crossbrowser: WEB_BROWSER=crossbrowser CB_USERNAME="<INSERT USER NAME HERE>" CB_AUTHKEY="<INSERT PASSWORD HERE>"
1452
- cb_desktop: --profile crossbrowser <%= desktop %>
1453
- cb_mobile: --profile crossbrowser <%= mobile %>
1454
-
1455
- # CrossBrowserTesting OS X desktop browser profiles
1456
- cb_osx: --profile cb_desktop RESOLUTION="1920x1200"
1457
- cb_macos_sierra: --profile cb_osx CB_OS="Mac10.12"
1458
- cb_chrome_sierra: --profile cb_macos_sierra CB_BROWSER="Chrome53x64"
1459
- cb_safari_sierra: --profile cb_macos_sierra CB_BROWSER="Safari10"
1460
-
1461
- cb_osx_el_capitan: --profile cb_osx CB_OS="Mac10.11"
1462
- cb_ff_el_cap: --profile cb_osx_el_capitan CB_BROWSER="FF46"
1463
- cb_chrome_el_cap: --profile cb_osx_el_capitan CB_BROWSER="Chrome48x64"
1464
- cb_safari_el_cap: --profile cb_osx_el_capitan CB_BROWSER="Safari9"
1465
-
1466
- cb_osx_yosemite: --profile cb_osx CB_OS="Mac10.10"
1467
- cb_ff_yos: --profile cb_osx_yosemite CB_BROWSER="FF46"
1468
- cb_chrome_yos: --profile cb_osx_yosemite CB_BROWSER="Chrome48x64"
1469
- cb_safari_yos: --profile cb_osx_yosemite CB_BROWSER="Safari8"
1470
-
1471
- # CrossBrowserTesting Windows desktop browser profiles
1472
- cb_win: --profile cb_desktop RESOLUTION="1920x1080"
1473
- cb_win8: --profile cb_win CB_OS="Win8"
1474
- cb_win10: --profile cb_win CB_OS="Win10"
1475
- cb_ff_win8: --profile cb_win8 CB_BROWSER="FF46"
1476
- cb_ff_win10: --profile cb_win10 CB_BROWSER="FF46"
1477
- cb_chrome_win8: --profile cb_win8 CB_BROWSER="Chrome48x64"
1478
- cb_chrome_win10: --profile cb_win10 CB_BROWSER="Chrome48x64"
1479
- cb_edge_win10: --profile cb_win10 CB_BROWSER="Edge20"
1480
-
1481
- cb_ie11_win8: --profile cb_win8 CB_BROWSER="IE11"
1482
- cb_ie10_win8: --profile cb_win8 CB_BROWSER="IE10"
1483
- cb_ie11_win10: --profile cb_win10 CB_BROWSER="IE11"
1484
-
1485
- # CrossBrowserTesting iOS mobile browser profiles
1486
- cb_iphone6s_plus: --profile cb_mobile DEVICE_TYPE=phone CB_PLATFORM="iPhone6sPlus-iOS9sim" CB_BROWSER="MblSafari9.0" RESOLUTION="1242x2208"
1487
- cb_iphone6s: --profile cb_mobile DEVICE_TYPE=phone CB_PLATFORM="iPhone6s-iOS9sim" CB_BROWSER="MblSafari9.0" RESOLUTION="750x1334"
1488
- cb_iphone6_plus: --profile cb_mobile DEVICE_TYPE=phone CB_PLATFORM="iPhone6Plus-iOS8sim" CB_BROWSER="MblSafari8.0" RESOLUTION="1242x2208"
1489
- cb_iphone6: --profile cb_mobile DEVICE_TYPE=phone CB_PLATFORM="iPhone6-iOS8sim" CB_BROWSER="MblSafari8.0" RESOLUTION="750x1334"
1490
- cb_iphone5s: --profile cb_mobile DEVICE_TYPE=phone CB_PLATFORM="iPhone5s-iOS7sim" CB_BROWSER="MblSafari7.0" RESOLUTION="640x1136"
1491
- cb_ipad_pro: --profile cb_mobile DEVICE_TYPE=tablet CB_PLATFORM="iPadPro-iOS9Sim" CB_BROWSER="MblSafari9.0" RESOLUTION="2732x2048"
1492
- cb_ipad_air2: --profile cb_mobile DEVICE_TYPE=tablet CB_PLATFORM="iPadAir2-iOS9Sim" CB_BROWSER="MblSafari9.0" RESOLUTION="2048x1536"
1493
- cb_ipad_air: --profile cb_mobile DEVICE_TYPE=tablet CB_PLATFORM="iPadAir-iOS8Sim" CB_BROWSER="MblSafari8.0" RESOLUTION="2048x1536"
1494
- cb_ipad_mini: --profile cb_mobile DEVICE_TYPE=tablet CB_PLATFORM="iPadMiniRetina-iOS7Sim" CB_BROWSER="MblSafari7.0" RESOLUTION="2048x1536"
1495
-
1496
- # CrossBrowserTesting Android mobile browser profiles
1497
- cb_nexus7: --profile cb_mobile CB_PLATFORM="Nexus7-And42" CB_BROWSER="MblChrome37" RESOLUTION="800x1280"
1498
- cb_galaxy_tab2: --profile cb_mobile CB_PLATFORM="GalaxyTab2-And41" CB_BROWSER="MblChrome38" RESOLUTION="1280x800"
1499
- cb_galaxy_s5: --profile cb_mobile CB_PLATFORM="GalaxyS5-And44" CB_BROWSER="MblChrome35" RESOLUTION="1080x1920"
1500
- cb_galaxy_s4: --profile cb_mobile CB_PLATFORM="GalaxyS4-And42" CB_BROWSER="MblChrome33" RESOLUTION="1080x1920"
1501
-
1502
-
1503
1374
  #==============
1504
1375
  # profiles for remotely hosted web browsers on the SauceLabs service
1505
1376
  #==============
@@ -1571,57 +1442,6 @@ placeholder text with the Subdomain specified on the Grid Configuration Paramete
1571
1442
  tb_ie10_win8: --profile tb_win8 TB_BROWSER="internet explorer" TB_VERSION="10"
1572
1443
  tb_ie11_win10: --profile tb_win10 TB_BROWSER="internet explorer" TB_VERSION="11"
1573
1444
  tb_edge_win10: --profile tb_win10 TB_BROWSER="microsoftedge" TB_VERSION="14"
1574
-
1575
- # TestingBot iOS mobile browser profiles
1576
- tb_ios: --profile tb_mobile TB_OS="MAC" TB_BROWSER="safari" TB_PLATFORM="iOS"
1577
- tb_iphone6s_plus_10: --profile tb_ios DEVICE_TYPE=phone TB_VERSION="10.0" TB_DEVICE="iPhone 6s Plus"
1578
- tb_iphone6s_plus_93: --profile tb_ios DEVICE_TYPE=phone TB_VERSION="9.3" TB_DEVICE="iPhone 6s Plus"
1579
- tb_iphone6_plus_10: --profile tb_ios DEVICE_TYPE=phone TB_VERSION="10.0" TB_DEVICE="iPhone 6 Plus"
1580
- tb_iphone6_plus_93: --profile tb_ios DEVICE_TYPE=phone TB_VERSION="9.3" TB_DEVICE="iPhone 6 Plus"
1581
- tb_iphone6s_10: --profile tb_ios DEVICE_TYPE=phone TB_VERSION="10.0" TB_DEVICE="iPhone 6s"
1582
- tb_iphone6s_93: --profile tb_ios DEVICE_TYPE=phone TB_VERSION="9.3" TB_DEVICE="iPhone 6s"
1583
- tb_iphone5s_10: --profile tb_ios DEVICE_TYPE=phone TB_VERSION="10.0" TB_DEVICE="iPhone 5s"
1584
- tb_iphone5s_93: --profile tb_ios DEVICE_TYPE=phone TB_VERSION="9.3" TB_DEVICE="iPhone 5s"
1585
- tb_ipad_pro_10: --profile tb_ios DEVICE_TYPE=tablet TB_VERSION="10.0" TB_DEVICE="iPad Pro"
1586
- tb_ipad_pro_93: --profile tb_ios DEVICE_TYPE=tablet TB_VERSION="9.3" TB_DEVICE="iPad Pro"
1587
- tb_ipad_air2_10: --profile tb_ios DEVICE_TYPE=tablet TB_VERSION="10.0" TB_DEVICE="iPad Air 2"
1588
- tb_ipad_air2_93: --profile tb_ios DEVICE_TYPE=tablet TB_VERSION="9.3" TB_DEVICE="iPad Air 2"
1589
-
1590
- # TestingBot Android mobile browser profiles
1591
- tb_android: --profile tb_mobile TB_OS="ANDROID" TB_BROWSER="browser" TB_PLATFORM="Android"
1592
- tb_nexus_s: --profile tb_android TB_VERSION="6.0" TB_DEVICE="Nexus S"
1593
- tb_nexus_1: --profile tb_android TB_VERSION="5.0" TB_DEVICE="Nexus 1"
1594
- tb_nexus_4: --profile tb_android TB_VERSION="6.0" TB_DEVICE="Nexus 4"
1595
- tb_galaxy_nexus: --profile tb_android TB_VERSION="4.4" TB_DEVICE="Galaxy Nexus"
1596
- tb_galaxy_s4: --profile tb_android TB_VERSION="4.4" TB_DEVICE="Galaxy S4"
1597
- tb_galaxy_s5: --profile tb_android TB_VERSION="5.0" TB_DEVICE="Galaxy S5"
1598
- tb_galaxy_s6: --profile tb_android TB_VERSION="6.0" TB_DEVICE="Galaxy S6"
1599
-
1600
-
1601
- #==============
1602
- # profiles for remotely hosted web browsers on the Gridlastic service
1603
- #==============
1604
-
1605
- gridlastic: WEB_BROWSER=gridlastic GL_USERNAME="<INSERT USER NAME HERE>" GL_AUTHKEY="<INSERT PASSWORD HERE>" GL_SUBDOMAIN="<INSERT SUBDOMAIN HERE>"
1606
- gl_video: RECORD_VIDEO="True" VIDEO_URL="<INSERT VIDEO URL HERE>"
1607
- gl_desktop: --profile gridlastic --profile gl_video <%= desktop %>
1608
-
1609
- # Gridlastic Windows desktop browser profiles
1610
- gl_windows: --profile gl_desktop GL_PLATFORM="windows"
1611
- gl_win8: --profile gl_windows GL_OS="WIN8"
1612
- gl_win8_1: --profile gl_windows GL_OS="WIN8_1"
1613
- gl_win10: --profile gl_windows GL_OS="WIN10"
1614
- gl_ff_win8: --profile gl_win8_1 GL_BROWSER="firefox" GL_VERSION="59"
1615
- gl_ff_win10: --profile gl_win10 GL_BROWSER="firefox" GL_VERSION="59"
1616
- gl_chrome_win8: --profile gl_win8_1 GL_BROWSER="chrome" GL_VERSION="latest"
1617
- gl_chrome_win10: --profile gl_win10 GL_BROWSER="chrome" GL_VERSION="latest"
1618
-
1619
- gl_ie11_win8: --profile gl_win8_1 GL_BROWSER="internet explorer" GL_VERSION="11"
1620
- gl_ie10_win8: --profile gl_win8 GL_BROWSER="internet explorer" GL_VERSION="10"
1621
- gl_ie11_win10: --profile gl_win10 GL_BROWSER="internet explorer" GL_VERSION="11"
1622
-
1623
- # Gridlastic Linux desktop browser profiles
1624
- gl_chrome_linux: --profile gl_desktop GL_OS="LINUX" GL_BROWSER="chrome" GL_VERSION="latest"
1625
1445
 
1626
1446
 
1627
1447
  #==============
@@ -1699,14 +1519,14 @@ landscape orientation running on the BrowserStack service:
1699
1519
 
1700
1520
  ## Web Test Automation Framework Implementation
1701
1521
 
1702
- <img src="https://i.imgur.com/qw48Kkf.jpg" width="1024" alt="Web Framework Overview" title="Web Framework Overview">
1522
+ ![TestCentricity Web Framework Overview](/doc/images/TC_Web.jpg)
1703
1523
 
1704
1524
 
1705
1525
 
1706
1526
 
1707
1527
  ## Copyright and License
1708
1528
 
1709
- TestCentricity™ Framework is Copyright (c) 2014-2021, Tony Mrozinski.
1529
+ TestCentricity™ Framework is Copyright (c) 2014-2022, Tony Mrozinski.
1710
1530
  All rights reserved.
1711
1531
 
1712
1532
  Redistribution and use in source and binary forms, with or without