testcentricity_web 2.4.3 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/HISTORY.md +184 -0
- data/{LICENSE.txt → LICENSE.md} +4 -5
- data/README.md +23 -24
- data/lib/devices/devices.yml +1 -1
- data/lib/testcentricity_web.rb +13 -24
- data/lib/testcentricity_web/appium_server.rb +1 -1
- data/lib/testcentricity_web/{data_objects_helper.rb → data_objects/data_objects_helper.rb} +0 -0
- data/lib/testcentricity_web/{environment.rb → data_objects/environment.rb} +0 -42
- data/lib/testcentricity_web/{excel_helper.rb → data_objects/excel_helper.rb} +0 -0
- data/lib/testcentricity_web/version.rb +1 -1
- data/lib/testcentricity_web/{drag_drop_helper.rb → web_core/drag_drop_helper.rb} +0 -0
- data/lib/testcentricity_web/{page_objects_helper.rb → web_core/page_objects_helper.rb} +102 -102
- data/lib/testcentricity_web/{page_sections_helper.rb → web_core/page_sections_helper.rb} +102 -102
- data/lib/testcentricity_web/{webdriver_helper.rb → web_core/webdriver_helper.rb} +57 -131
- data/lib/testcentricity_web/{siebel_open_ui_helper.rb → web_elements/siebel_open_ui_helper.rb} +0 -0
- data/testcentricity_web.gemspec +7 -8
- metadata +22 -48
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 26609c1fd4cffdfd5b34157fa7124808b603666a
|
4
|
+
data.tar.gz: b424fe3614b7e02a739814d3987b56efcee81813
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 709c9a984bf177a0f39dbe123f39bc25f567f232b4c416847b8af80f152d6bd91c225267782dd441b710a63f1cde5ab354c499e8e84e54df661b44101149075f
|
7
|
+
data.tar.gz: 4d6a3ecd99625ea117803412e421b23108a74581b6f60cc4cc2931ecab5689dbb9e3bc203022f440fa970f2ea0c8a380f746cef7ec9d5d923193fc6f5eeb052c
|
data/HISTORY.md
ADDED
@@ -0,0 +1,184 @@
|
|
1
|
+
###Version 3.0.0
|
2
|
+
|
3
|
+
* The TestCentricity™ Web gem now works with Selenium-WebDriver version 3.11 and **geckodriver** version 0.20.1 (or later) to support testing of the latest versions
|
4
|
+
of Firefox web browsers.
|
5
|
+
* Support for testing on locally hosted "headless" Chrome or Firefox browsers has been added.
|
6
|
+
* Support for headless browser testing using Poltergeist and PhantomJS has been removed.
|
7
|
+
* Support for Legacy FirefoxDriver (used in Firefox versions < 48) has been added.
|
8
|
+
* `TestCentricity::WebDriverConnect.set_webdriver_path` method now sets the path to the appropriate **geckodriver** file for OS X or Windows when testing on
|
9
|
+
locally hosted Firefox browsers.
|
10
|
+
|
11
|
+
###Version 2.4.3
|
12
|
+
|
13
|
+
* Updated device profiles for iPhone 7 (iOS 11) with Mobile Firefox browser and iPad (iOS 10) with Mobile Firefox browser.
|
14
|
+
|
15
|
+
###Version 2.4.1
|
16
|
+
|
17
|
+
* Added device profiles for iPad (iOS 10) with MS Edge browser.
|
18
|
+
|
19
|
+
###Version 2.4.0
|
20
|
+
|
21
|
+
* Updated `TestCentricity::WebDriverConnect.initialize_web_driver` method to read the `APP_FULL_RESET`, `APP_NO_RESET`, and `NEW_COMMAND_TIMEOUT` Environment
|
22
|
+
Variables and set the corresponding `fullReset`, `noReset`, and `newCommandTimeout` Appium capabilities for iOS and Android physical devices and simulators.
|
23
|
+
Also reads the `WDA_LOCAL_PORT` Environment Variable and sets the `wdaLocalPort` Appium capability for iOS physical devices only.
|
24
|
+
|
25
|
+
###Version 2.3.19
|
26
|
+
|
27
|
+
* Fixed device profile for `android_phone` - Generic Android Phone.
|
28
|
+
|
29
|
+
###Version 2.3.18
|
30
|
+
|
31
|
+
* Updated `SelectList.define_list_elements` method to accept value for `:list_trigger` element.
|
32
|
+
* Updated `SelectList.choose_option` to respect `:list_item` value and to click on `:list_trigger` element, if one is specified.
|
33
|
+
* Updated `PageSection` and `PageObject` UI element object declaration methods to no longer use `class_eval` pattern.
|
34
|
+
* Updated device profiles for iPhone 7 (iOS 10) with Chrome browser and iPad (iOS 10) with Chrome browser.
|
35
|
+
* Fixed `SelectList.choose_option` to also accept `:text`, `:value`, and `:index` option hashes across all types of select list objects.
|
36
|
+
|
37
|
+
###Version 2.3.17
|
38
|
+
|
39
|
+
* Added `List.wait_until_item_count_is` and `List.wait_until_item_count_changes` methods.
|
40
|
+
* `UIElement.wait_until_value_is` and `List.wait_until_item_count_is` methods now accept comparison hash.
|
41
|
+
|
42
|
+
###Version 2.3.16
|
43
|
+
|
44
|
+
* Added `PageSection.double_click`, `PageObject.right_click`, and `PageObject.send_keys` methods.
|
45
|
+
|
46
|
+
###Version 2.3.15
|
47
|
+
|
48
|
+
* Added `PageObject.wait_until_exists` and `PageObject.wait_until_gone` methods.
|
49
|
+
* Fixed bug in `UIElement.get_object_type` method that could result in a `NoMethodError obj not defined` error.
|
50
|
+
* Fixed bug in `PageObject.verify_ui_states` and `PageSection.verify_ui_states` methods that failed to enqueue errors when UI elements could not be found.
|
51
|
+
|
52
|
+
###Version 2.3.14
|
53
|
+
|
54
|
+
* Updated device profiles for iPhone 7 (iOS 10) with MS Edge browser.
|
55
|
+
|
56
|
+
###Version 2.3.13
|
57
|
+
|
58
|
+
* Added `AppiumServer.start`, `AppiumServer.running?`, and `AppiumServer.stop` methods for starting and stopping the Appium Server prior to executing tests on
|
59
|
+
iOS physical devices or simulators, or Android virtual device emulators.
|
60
|
+
|
61
|
+
###Version 2.3.12
|
62
|
+
|
63
|
+
* Added `Environ.is_simulator?` and `Environ.is_web?` methods.
|
64
|
+
|
65
|
+
###Version 2.3.11
|
66
|
+
|
67
|
+
* Added support for running tests in Mobile Safari browser on physical iOS devices.
|
68
|
+
* Updated device profiles for iPhone 7 (iOS 10) with Mobile Firefox browser and iPad (iOS 10) with Mobile Firefox browser.
|
69
|
+
|
70
|
+
###Version 2.3.10
|
71
|
+
|
72
|
+
* Added support for running tests in mobile Chrome or Android browsers on Android Studio virtual device emulators.
|
73
|
+
* Added `displayed?`, `get_all_items_count`, and `get_all_list_items` methods to `PageSection` class.
|
74
|
+
* Added `get_all_items_count`, and `get_all_list_items` methods to `List` class.
|
75
|
+
|
76
|
+
###Version 2.3.9
|
77
|
+
|
78
|
+
* Updated `PageObject.populate_data_fields` and `PageSection.populate_data_fields` methods to accept optional `wait_time` parameter.
|
79
|
+
* Updated device profiles for iPhone 7 (iOS 10) with MS Edge browser, iPhone 7 (iOS 10) with Chrome browser, and iPhone 7 (iOS 10) with Firefox browser.
|
80
|
+
* Updated device profiles for iPad (iOS 10) with Chrome browser and iPad (iOS 10) with Firefox browser.
|
81
|
+
|
82
|
+
###Version 2.3.8
|
83
|
+
|
84
|
+
* Fixed locator resolution for **Indexed PageSection Objects**.
|
85
|
+
|
86
|
+
###Version 2.3.7
|
87
|
+
|
88
|
+
* Added `width`, `height`, `x`, `y`, and `displayed?` methods to `UIElement` class.
|
89
|
+
|
90
|
+
###Version 2.3.6
|
91
|
+
|
92
|
+
* Added `TextField.clear` method for deleting the contents of text fields. This method should trigger the `onchange` event for the associated text field.
|
93
|
+
* `TextField.clear` method now works with most `number` type fields.
|
94
|
+
|
95
|
+
###Version 2.3.5
|
96
|
+
|
97
|
+
* Updated `PageObject.populate_data_fields` and `PageSection.populate_data_fields` methods to be compatible with Redactor editor fields.
|
98
|
+
* Updated device profiles for iPhone 7 (iOS 10) with MS Edge browser, iPhone 7 (iOS 10) with Chrome browser, and iPhone 7 (iOS 10) with Firefox browser.
|
99
|
+
|
100
|
+
###Version 2.3.4
|
101
|
+
|
102
|
+
* Fixed bug in `PageObject.populate_data_fields` and `PageSection.populate_data_fields` methods that prevented deletion of data in number type textfields
|
103
|
+
and textarea controls.
|
104
|
+
|
105
|
+
###Version 2.3.3
|
106
|
+
|
107
|
+
* Added device profile for iPhone 7 (iOS 10) with MS Edge browser.
|
108
|
+
* Corrected device profiles for iPad (iOS 10) with Mobile Chrome browser and iPad (iOS 10) with Mobile Firefox browser.
|
109
|
+
|
110
|
+
###Version 2.3.1
|
111
|
+
|
112
|
+
* When testing using remotely hosted browsers on the BrowserStack service, the BrowserStack Local instance is automatically started if the `TUNNELING`
|
113
|
+
Environment Variable is set to `true`. `Environ.tunneling` will be set to true if the BrowserStack Local instance is succesfully started.
|
114
|
+
* Added `TestCentricity::WebDriverConnect.close_tunnel` method to close BrowserStack Local instance when Local testing is enabled. Refer to the
|
115
|
+
**Remotely hosted desktop and mobile web browsers** section for information on usage.
|
116
|
+
|
117
|
+
###Version 2.2.1
|
118
|
+
|
119
|
+
* `SelectList.choose_option` method now accepts index values for Chosen list objects.
|
120
|
+
|
121
|
+
###Version 2.2.0
|
122
|
+
|
123
|
+
* CSS selectors or XPath expressions may be used as locators for all types of **UI Elements**, including tables.
|
124
|
+
|
125
|
+
###Version 2.1.10
|
126
|
+
|
127
|
+
* Added device profiles for iPhone 7 (iOS 10) with Mobile Firefox browser and iPad (iOS 10) with Mobile Firefox browser.
|
128
|
+
|
129
|
+
###Version 2.1.9
|
130
|
+
|
131
|
+
* Fixed bug in `SelectList.choose_option`, `SelectList.get_options`, `SelectList.get_option_count`, and `SelectList.get_selected_option` methods which
|
132
|
+
did not recognize grouped option in Chosen list objects.
|
133
|
+
|
134
|
+
###Version 2.1.8
|
135
|
+
|
136
|
+
* Added `PageSection.verify_list_items` method for **Indexed PageSection Objects**.
|
137
|
+
|
138
|
+
###Version 2.1.7
|
139
|
+
|
140
|
+
* Updated `PageObject.populate_data_fields` and `PageSection.populate_data_fields` methods to use backspace characters to delete contents of a textfield
|
141
|
+
instead of using `clear`, which was preventing `onchange` JavaScript events from being triggered in some browsers.
|
142
|
+
|
143
|
+
###Version 2.1.6
|
144
|
+
|
145
|
+
* Fixed bug in `TestCentricity::WebDriverConnect.set_webdriver_path` method that was failing to set the path to the appropriate **chromedriver** file for OS X
|
146
|
+
and Windows.
|
147
|
+
|
148
|
+
###Version 2.1.5
|
149
|
+
|
150
|
+
* Added `get_min`, `get_max`, and `get_step` methods to `TextField` class.
|
151
|
+
* Updated `PageObject.verify_ui_states` and `PageSection.verify_ui_states` methods to support verification of `min`, `max`, and `step` attributes
|
152
|
+
for textfields.
|
153
|
+
* Fixed Chrome and Firefox support for setting browser language via the `LOCALE` Environment Variable. This capability now works for emulated mobile
|
154
|
+
browsers hosted in a local instance of Chrome or Firefox.
|
155
|
+
|
156
|
+
###Version 2.1.4
|
157
|
+
|
158
|
+
* Added suppression of the Info Bar that displays "Chrome is being controlled by automated test software" on locally hosted instances of the Chrome browser.
|
159
|
+
|
160
|
+
|
161
|
+
###Version 2.1.3
|
162
|
+
|
163
|
+
* Added support for "tiling" or cascading multiple browser windows when the `BROWSER_TILE` and `PARALLEL` Environment Variables are set to true. For each
|
164
|
+
concurrent parallel thread being executed, the position of each browser will be offset by 100 pixels right and 100 pixels down. For parallel test execution,
|
165
|
+
use the [parallel_tests gem](https://rubygems.org/gems/parallel_tests) to decrease overall test execution time.
|
166
|
+
|
167
|
+
###Version 2.1.2
|
168
|
+
|
169
|
+
* Added device profiles for Microsoft Lumia 950, Blackberry Leap, Blackberry Passport, and Kindle Fire HD 10
|
170
|
+
* Added ability to set browser language support via the `LOCALE` Environment Variable for local instances of Chrome browsers
|
171
|
+
|
172
|
+
###Version 2.1.0
|
173
|
+
|
174
|
+
* Added device profiles for iPhone 8, iPhone 8 Plus, iPhone X devices running iOS 11
|
175
|
+
* Added device profile for iPad Pro 10.5" with iOS 11
|
176
|
+
* Updated iPhone 7 and iPhone 7 Plus profiles to iOS 10
|
177
|
+
* Updated Google Pixel and Google Pixel XL profiles to Android 8
|
178
|
+
* Added device profiles for iPhone 7 (iOS 10) with Mobile Chrome browser and iPad (iOS 10) with Mobile Chrome browser
|
179
|
+
* The `TestCentricity::WebDriverConnect.initialize_web_driver` method now sets the `Environ` object to the correct device connection states for local and
|
180
|
+
cloud hosted browsers.
|
181
|
+
* The `TestCentricity::WebDriverConnect.initialize_web_driver` method no longer calls `initialize_browser_size` when running tests against cloud hosted
|
182
|
+
mobile web browser, which was resulting in Appium throwing exceptions for unsupported method calls.
|
183
|
+
* The `TestCentricity::WebDriverConnect.set_webdriver_path` method now correctly sets the path for Chrome webDrivers when the `HOST_BROWSER` Environment
|
184
|
+
Variable is set to `chrome`. Tests against locally hosted emulated mobile web browser running on a local instance of Chrome will now work correctly.
|
data/{LICENSE.txt → LICENSE.md}
RENAMED
@@ -1,15 +1,14 @@
|
|
1
|
-
TestCentricity Web
|
1
|
+
TestCentricity™ Web Framework is Copyright (c) 2014-2018, Tony Mrozinski
|
2
2
|
All rights reserved.
|
3
3
|
|
4
|
-
|
5
4
|
Redistribution and use in source and binary forms, with or without
|
6
5
|
modification, are permitted provided that the following conditions are met:
|
7
6
|
|
8
7
|
1. Redistributions of source code must retain the above copyright notice,
|
9
|
-
this list of conditions
|
8
|
+
this list of conditions and the following disclaimer.
|
10
9
|
|
11
10
|
2. Redistributions in binary form must reproduce the above copyright
|
12
|
-
notice, this list of conditions
|
11
|
+
notice, this list of conditions and the following disclaimer in the
|
13
12
|
documentation and/or other materials provided with the distribution.
|
14
13
|
|
15
14
|
3. Neither the name of the copyright holder nor the names of its contributors
|
@@ -25,4 +24,4 @@ NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
|
25
24
|
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
26
25
|
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
27
26
|
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
28
|
-
POSSIBILITY OF SUCH DAMAGE.
|
27
|
+
POSSIBILITY OF SUCH DAMAGE.
|
data/README.md
CHANGED
@@ -6,10 +6,12 @@
|
|
6
6
|
The TestCentricity™ Web core generic framework for desktop and mobile web site testing implements a Page Object and Data Object Model DSL for
|
7
7
|
use with Cucumber, Capybara, and Selenium-Webdriver.
|
8
8
|
|
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
|
+
|
9
11
|
The TestCentricity™ Web gem supports running automated tests against the following web test targets:
|
10
|
-
* locally hosted desktop browsers (Firefox
|
12
|
+
* locally hosted desktop browsers (Firefox, Chrome, Safari, or IE)
|
11
13
|
* locally hosted emulated iOS Mobile Safari, Android, Windows Phone, or Blackberry mobile browsers (running within a local instance of Chrome)
|
12
|
-
*
|
14
|
+
* locally hosted headless Chrome or Firefox browsers
|
13
15
|
* mobile Safari browsers on iOS device simulators or physical iOS devices (using Appium and XCode on OS X)
|
14
16
|
* mobile Chrome or Android browsers on Android Studio virtual device emulators (using Appium and Android Studio on OS X)
|
15
17
|
* cloud hosted desktop (Firefox, Chrome, Safari, IE, or Edge) or mobile (iOS Mobile Safari or Android) web browsers using the [Browserstack](https://www.browserstack.com/list-of-browsers-and-platforms?product=automate),
|
@@ -19,15 +21,17 @@ The TestCentricity™ Web gem supports running automated tests against the follo
|
|
19
21
|
* enterprise web portals build using Siebel Open UI
|
20
22
|
|
21
23
|
|
22
|
-
|
23
|
-
|
24
|
-
feature incomplete and potentially unstable. More information can be found [here](https://github.com/teamcapybara/capybara/issues/1710).
|
25
|
-
|
26
|
-
TestCentricity™ will be updated to support testing with Selenium-WebDriver version 3.x as soon as a stable version is available that **fully** supports locally
|
27
|
-
hosted instances of Chrome, Firefox, Safari, and IE web browsers.
|
24
|
+
## What's New
|
25
|
+
###Version 3.0.0
|
28
26
|
|
27
|
+
* The TestCentricity™ Web gem now works with Selenium-WebDriver version 3.11 and **geckodriver** version 0.20.1 (or later) to support testing of the latest
|
28
|
+
versions of Firefox web browsers.
|
29
|
+
* Support for testing on locally hosted "headless" Chrome or Firefox browsers has been added.
|
30
|
+
* Support for headless browser testing using Poltergeist and PhantomJS has been removed.
|
31
|
+
* Support for Legacy FirefoxDriver (used in Firefox versions < 48) has been added.
|
32
|
+
* `TestCentricity::WebDriverConnect.set_webdriver_path` method now sets the path to the appropriate **geckodriver** file for OS X or Windows when testing on
|
33
|
+
locally hosted Firefox browsers.
|
29
34
|
|
30
|
-
## What's New
|
31
35
|
###Version 2.4.3
|
32
36
|
|
33
37
|
* Updated device profiles for iPhone 7 (iOS 11) with Mobile Firefox browser and iPad (iOS 10) with Mobile Firefox browser.
|
@@ -207,7 +211,7 @@ did not recognize grouped option in Chosen list objects.
|
|
207
211
|
|
208
212
|
###Version 2.1.6
|
209
213
|
|
210
|
-
* Fixed bug in `TestCentricity::WebDriverConnect.set_webdriver_path` method that was failing to set the path to the appropriate chromedriver file for OS X
|
214
|
+
* Fixed bug in `TestCentricity::WebDriverConnect.set_webdriver_path` method that was failing to set the path to the appropriate **chromedriver** file for OS X
|
211
215
|
and Windows.
|
212
216
|
|
213
217
|
###Version 2.1.5
|
@@ -259,14 +263,6 @@ If you are using RSpec instead, you need to require the following in your *env.r
|
|
259
263
|
require 'testcentricity_web'
|
260
264
|
|
261
265
|
|
262
|
-
### Using Poltergeist
|
263
|
-
|
264
|
-
If you will be running your tests on a "headless" web browser using Poltergeist and PhantomJS, you must add this line to your automation
|
265
|
-
project's Gemfile:
|
266
|
-
|
267
|
-
gem 'poltergeist'
|
268
|
-
|
269
|
-
|
270
266
|
### Using Appium
|
271
267
|
|
272
268
|
If you will be running your tests on mobile Safari browsers on simulated iOS devices using Appium and XCode Simulators, you need to require
|
@@ -884,7 +880,7 @@ To use these **PageManager** methods, include the step definitions and code belo
|
|
884
880
|
|
885
881
|
## Connecting to a Web Browser
|
886
882
|
|
887
|
-
The `TestCentricity::WebDriverConnect.initialize_web_driver` method configures the appropriate
|
883
|
+
The `TestCentricity::WebDriverConnect.initialize_web_driver` method configures the appropriate Selenium-Webdriver capabilities required to establish a
|
888
884
|
connection with a target web browser, and sets the base host URL of the web site you are running your tests against.
|
889
885
|
|
890
886
|
The `TestCentricity::WebDriverConnect.initialize_web_driver` method accepts a single optional parameter - the base host URL. Cucumber **Environment
|
@@ -903,7 +899,6 @@ values from the table below:
|
|
903
899
|
`chrome` | macOS (OS X) or Windows
|
904
900
|
`safari` | macOS (OS X) only
|
905
901
|
`ie` | Windows only
|
906
|
-
`poltergeist` | macOS (OS X) or Windows
|
907
902
|
|
908
903
|
To set the size of a desktop browser window, you set the `BROWSER_SIZE` Environment Variable to the desired width and height in pixels as shown below:
|
909
904
|
|
@@ -1215,11 +1210,15 @@ service(s) that you intend to connect with.
|
|
1215
1210
|
#==============
|
1216
1211
|
|
1217
1212
|
firefox: WEB_BROWSER=firefox <%= desktop %>
|
1218
|
-
safari: WEB_BROWSER=safari <%= desktop %>
|
1219
1213
|
chrome: WEB_BROWSER=chrome <%= desktop %>
|
1214
|
+
safari: WEB_BROWSER=safari <%= desktop %>
|
1220
1215
|
ie: WEB_BROWSER=ie <%= desktop %>
|
1221
|
-
|
1222
|
-
|
1216
|
+
|
1217
|
+
chrome_headless: WEB_BROWSER=chrome_headless <%= desktop %>
|
1218
|
+
firefox_headless: WEB_BROWSER=firefox_headless <%= desktop %>
|
1219
|
+
firefox_legacy: WEB_BROWSER=firefox_legacy <%= desktop %>
|
1220
|
+
|
1221
|
+
|
1223
1222
|
#==============
|
1224
1223
|
# profiles for locally hosted mobile web browsers (emulated locally in Firefox browser)
|
1225
1224
|
# NOTE: to host emulated mobile browsers in Chrome set the HOST_BROWSER=chrome
|
@@ -1319,7 +1318,7 @@ service(s) that you intend to connect with.
|
|
1319
1318
|
# NOTE: Requires installation of XCode, Appium, and the appium_capybara gem
|
1320
1319
|
#==============
|
1321
1320
|
|
1322
|
-
|
1321
|
+
my_ios_11_3_iphone: --profile app_ios_11 DEVICE_TYPE=phone APP_DEVICE="My Test iPhoneX" APP_UDID="INSERT YOUR DEVICE UDID"
|
1323
1322
|
my_ios_10_3_ipad: --profile app_ios_10 DEVICE_TYPE=tablet APP_DEVICE="My Test iPad Pro" APP_UDID="INSERT YOUR DEVICE UDID"
|
1324
1323
|
|
1325
1324
|
|
data/lib/devices/devices.yml
CHANGED
@@ -61,7 +61,7 @@
|
|
61
61
|
:css_width: 375
|
62
62
|
:css_height: 667
|
63
63
|
:default_orientation: portrait
|
64
|
-
:user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 11_3 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) CriOS/
|
64
|
+
:user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 11_3 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) CriOS/66.0.3359.122 Mobile/15E216 Safari/604.1"
|
65
65
|
:iphone7_firefox:
|
66
66
|
:name: "iPhone 7 - Firefox"
|
67
67
|
:os: ios
|
data/lib/testcentricity_web.rb
CHANGED
@@ -1,20 +1,21 @@
|
|
1
1
|
require 'capybara/cucumber'
|
2
2
|
require 'test/unit'
|
3
|
-
require 'capybara/poltergeist'
|
4
3
|
|
4
|
+
require 'testcentricity_web/version'
|
5
5
|
require 'testcentricity_web/world_extensions'
|
6
|
-
require 'testcentricity_web/browser_helper'
|
7
|
-
require 'testcentricity_web/data_objects_helper'
|
8
|
-
require 'testcentricity_web/drag_drop_helper'
|
9
|
-
require 'testcentricity_web/excel_helper'
|
10
6
|
require 'testcentricity_web/exception_queue_helper'
|
11
|
-
require 'testcentricity_web/page_objects_helper'
|
12
|
-
require 'testcentricity_web/page_sections_helper'
|
13
|
-
require 'testcentricity_web/siebel_open_ui_helper'
|
14
7
|
require 'testcentricity_web/utility_helpers'
|
15
|
-
require 'testcentricity_web/
|
16
|
-
require 'testcentricity_web/
|
17
|
-
|
8
|
+
require 'testcentricity_web/browser_helper'
|
9
|
+
require 'testcentricity_web/appium_server'
|
10
|
+
|
11
|
+
require 'testcentricity_web/web_core/drag_drop_helper'
|
12
|
+
require 'testcentricity_web/web_core/page_objects_helper'
|
13
|
+
require 'testcentricity_web/web_core/page_sections_helper'
|
14
|
+
require 'testcentricity_web/web_core/webdriver_helper'
|
15
|
+
|
16
|
+
require 'testcentricity_web/data_objects/data_objects_helper'
|
17
|
+
require 'testcentricity_web/data_objects/environment'
|
18
|
+
require 'testcentricity_web/data_objects/excel_helper'
|
18
19
|
|
19
20
|
require 'testcentricity_web/web_elements/ui_elements_helper'
|
20
21
|
require 'testcentricity_web/web_elements/button'
|
@@ -37,7 +38,7 @@ require 'testcentricity_web/web_elements/list_element'
|
|
37
38
|
require 'testcentricity_web/web_elements/list_button'
|
38
39
|
require 'testcentricity_web/web_elements/list_checkbox'
|
39
40
|
require 'testcentricity_web/web_elements/list_radio'
|
40
|
-
require 'testcentricity_web/
|
41
|
+
require 'testcentricity_web/web_elements/siebel_open_ui_helper'
|
41
42
|
|
42
43
|
|
43
44
|
module TestCentricity
|
@@ -98,18 +99,6 @@ module TestCentricity
|
|
98
99
|
def self.current_page=(page)
|
99
100
|
@current_page = page
|
100
101
|
end
|
101
|
-
|
102
|
-
# Sets the currently active PageObject
|
103
|
-
#
|
104
|
-
# @param page [PageObject] Reference to the active PageObject
|
105
|
-
# @example
|
106
|
-
# TestCentricity::PageManager.set_current_page(product_search_page)
|
107
|
-
#
|
108
|
-
# @deprecated Please use {#current_page=} instead
|
109
|
-
def self.set_current_page(page)
|
110
|
-
warn "[DEPRECATION] 'TestCentricity::PageManager.set_current_page' is deprecated. Please use 'current_page=' instead."
|
111
|
-
@current_page = page
|
112
|
-
end
|
113
102
|
end
|
114
103
|
|
115
104
|
|
File without changes
|
@@ -96,12 +96,6 @@ module TestCentricity
|
|
96
96
|
end
|
97
97
|
end
|
98
98
|
|
99
|
-
# @deprecated Please use {#browser=} instead
|
100
|
-
def self.set_browser(browser)
|
101
|
-
warn "[DEPRECATION] 'TestCentricity::Environ.set_browser' is deprecated. Please use 'Environ.browser =' instead."
|
102
|
-
@browser = browser.downcase.to_sym
|
103
|
-
end
|
104
|
-
|
105
99
|
def self.browser=(browser)
|
106
100
|
@browser = browser.downcase.to_sym
|
107
101
|
end
|
@@ -126,12 +120,6 @@ module TestCentricity
|
|
126
120
|
@session_state
|
127
121
|
end
|
128
122
|
|
129
|
-
# @deprecated Please use {#os=} instead
|
130
|
-
def self.set_os(os)
|
131
|
-
warn "[DEPRECATION] 'TestCentricity::Environ.set_os' is deprecated. Please use 'Environ.os =' instead."
|
132
|
-
@os = os
|
133
|
-
end
|
134
|
-
|
135
123
|
def self.os=(os)
|
136
124
|
@os = os
|
137
125
|
end
|
@@ -140,12 +128,6 @@ module TestCentricity
|
|
140
128
|
@os
|
141
129
|
end
|
142
130
|
|
143
|
-
# @deprecated Please use {#device=} instead
|
144
|
-
def self.set_device(device)
|
145
|
-
warn "[DEPRECATION] 'TestCentricity::Environ.set_device' is deprecated. Please use 'Environ.device =' instead."
|
146
|
-
@device = device
|
147
|
-
end
|
148
|
-
|
149
131
|
def self.device=(device)
|
150
132
|
@device = device
|
151
133
|
end
|
@@ -166,12 +148,6 @@ module TestCentricity
|
|
166
148
|
@device == :web
|
167
149
|
end
|
168
150
|
|
169
|
-
# @deprecated Please use {#device_type=} instead
|
170
|
-
def self.set_device_type(type)
|
171
|
-
warn "[DEPRECATION] 'TestCentricity::Environ.set_device_type' is deprecated. Please use 'Environ.device_type =' instead."
|
172
|
-
@device_type = type.downcase
|
173
|
-
end
|
174
|
-
|
175
151
|
def self.device_type=(type)
|
176
152
|
@device_type = type.downcase.to_sym
|
177
153
|
end
|
@@ -228,12 +204,6 @@ module TestCentricity
|
|
228
204
|
@tunneling
|
229
205
|
end
|
230
206
|
|
231
|
-
# @deprecated Please use {#platform=} instead
|
232
|
-
def self.set_platform(platform)
|
233
|
-
warn "[DEPRECATION] 'TestCentricity::Environ.set_platform' is deprecated. Please use 'Environ.platform =' instead."
|
234
|
-
@platform = platform
|
235
|
-
end
|
236
|
-
|
237
207
|
def self.platform=(platform)
|
238
208
|
@platform = platform
|
239
209
|
end
|
@@ -254,12 +224,6 @@ module TestCentricity
|
|
254
224
|
@signed_in
|
255
225
|
end
|
256
226
|
|
257
|
-
# @deprecated Please use {#portal_state=} instead
|
258
|
-
def self.set_portal_state(portal_state)
|
259
|
-
warn "[DEPRECATION] 'TestCentricity::Environ.set_portal_state' is deprecated. Please use 'Environ.portal_state =' instead."
|
260
|
-
@portal_status = portal_state
|
261
|
-
end
|
262
|
-
|
263
227
|
def self.portal_state=(portal_state)
|
264
228
|
@portal_status = portal_state
|
265
229
|
end
|
@@ -268,12 +232,6 @@ module TestCentricity
|
|
268
232
|
@portal_status
|
269
233
|
end
|
270
234
|
|
271
|
-
# @deprecated Please use {#portal_context=} instead
|
272
|
-
def self.set_portal_context(portal_context)
|
273
|
-
warn "[DEPRECATION] 'TestCentricity::Environ.set_portal_context' is deprecated. Please use 'Environ.portal_context =' instead."
|
274
|
-
@portal_context = portal_context
|
275
|
-
end
|
276
|
-
|
277
235
|
def self.portal_context=(portal_context)
|
278
236
|
@portal_context = portal_context
|
279
237
|
end
|