testcentricity_web 0.6.4.1 → 0.6.4.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 58bd9d1679b6f663c4899846aec59b4872961837
4
- data.tar.gz: 9cd449d7a5aa687253b498b9def2a3331d97e8ee
3
+ metadata.gz: c2b57c18e6b2f09ab03ab2e2dc5fa5e093722736
4
+ data.tar.gz: e5ba500895ea6c47c7aead21ffed29f4230deb3e
5
5
  SHA512:
6
- metadata.gz: 7ce854490297c36cff5afc7d2feb9de2b034d2916ebabbc9bf5cb23b552f0623aa37ed25b74dd50dfb3e912931a95f0285d3954ac6cfec20811afddccfd972a8
7
- data.tar.gz: 356e35f4a42b49cefcc26d364d16ebb1f4b682caee16a6b218a8f94b47106b3d8defa6b9bd8717a3d88f62a48ff2051ef4c7ea1d79256db4e6720cb533c87781
6
+ metadata.gz: 1c97d22f6d9259139b65dede956ac2cce2f79f140950d351d456259dfa3cc6146fa423b35cf953fe2c76fc38ba2fbbe905f86fb8d945e0254d8e8a3d84139aa5
7
+ data.tar.gz: 868e738edd598c608ec4ba5e69978392edd60974b958fe3cf6283a2001ca90b7405157fb588de06596df3b525476b1dbc35e89fdcbea153232dcef1cbffe06e0
data/README.md CHANGED
@@ -66,7 +66,7 @@ to update the affected feature file, scenarios, or step definitions.
66
66
 
67
67
  ### Defining a Page Object
68
68
 
69
- Your **Page Object** class definitions should be contained within individual **`.rb`** files in the **`features/support/pages`** folder of your
69
+ Your **Page Object** class definitions should be contained within individual `.rb` files in the `features/support/pages` folder of your
70
70
  test automation project. You define new **Page Objects** as shown below:
71
71
 
72
72
  class LoginPage < TestCentricity::PageObject
@@ -82,17 +82,17 @@ test automation project. You define new **Page Objects** as shown below:
82
82
  Web pages typically have names and URLs associated with them. Web pages also typically have a unique object or attribute that, when present,
83
83
  indicates that the page's contents have fully loaded.
84
84
 
85
- The **`page_name`** trait is registered with the **PageManager** object, which includes a **`find_page`** method that takes a page name as a
85
+ The `page_name` trait is registered with the **PageManager** object, which includes a `find_page` method that takes a page name as a
86
86
  parameter and returns an instance of the associated **Page Object**.
87
87
 
88
- A **`page_url`** trait should be defined if a page can be directly loaded using a URL. If you set Capybara's **`app_host`**, or specify a base URL
89
- when calling the **`WebDriverConnect.initialize_web_driver`** method, then your **`page_url`** trait can be the relative URL slug that will
90
- be appended to the base URL specified in **`app_host`**. Specifying a **`page_url`** trait is optional, as not all web pages can be directly loaded
88
+ A `page_url` trait should be defined if a page can be directly loaded using a URL. If you set Capybara's `app_host`, or specify a base URL
89
+ when calling the `WebDriverConnect.initialize_web_driver` method, then your `page_url` trait can be the relative URL slug that will
90
+ be appended to the base URL specified in `app_host`. Specifying a `page_url` trait is optional, as not all web pages can be directly loaded
91
91
  via a URL.
92
92
 
93
- A **`page_locator`** trait is defined if a page has a unique object or attribute that exists once the page's contents have fully loaded. The
94
- **`page_locator`** trait is a CSS or Xpath expression that uniquely identifies the object or attribute. The **`verify_page_exists`** method waits
95
- for the **`page_locator`** trait to exist.
93
+ A `page_locator` trait is defined if a page has a unique object or attribute that exists once the page's contents have fully loaded. The
94
+ `page_locator` trait is a CSS or Xpath expression that uniquely identifies the object or attribute. The `verify_page_exists` method waits
95
+ for the `page_locator` trait to exist.
96
96
 
97
97
  You define your page's **Traits** as shown below:
98
98
 
@@ -183,7 +183,7 @@ A **PageSection Object** may contain other **PageSection Objects**.
183
183
 
184
184
  ### Defining a PageSection Object
185
185
 
186
- Your **PageSection** class definitions should be contained within individual **`.rb`** files in the **`features/support/sections`** folder of
186
+ Your **PageSection** class definitions should be contained within individual `.rb` files in the `features/support/sections` folder of
187
187
  your test automation project. You define new **PageSection Objects** as shown below:
188
188
 
189
189
  class SearchForm < TestCentricity::PageSection
@@ -192,7 +192,7 @@ your test automation project. You define new **PageSection Objects** as shown be
192
192
 
193
193
  ### Adding Traits to a PageSection Object
194
194
 
195
- A **PageSection Object** typically has a root node object that encapsulates a collection of **UI Elements**. The **`section_locator`** trait
195
+ A **PageSection Object** typically has a root node object that encapsulates a collection of **UI Elements**. The `section_locator` trait
196
196
  specifies the CSS or Xpath expression that uniquely identifies that root node object.
197
197
 
198
198
  You define your page section's **Traits** as shown below:
@@ -276,8 +276,8 @@ One common implementation is shown below:
276
276
 
277
277
  World(WorldPages)
278
278
 
279
- The **`WorldPages`** module above can be defined in your **`env.rb`** file, or you can define it in a separate **`world_pages.rb`** file in the
280
- **`features/support`** folder.
279
+ The `WorldPages` module above can be defined in your `env.rb` file, or you can define it in a separate `world_pages.rb` file in the
280
+ `features/support` folder.
281
281
 
282
282
  While this approach is effective for small web applications with only a few pages (and hence few **Page Objects**), it quickly becomes
283
283
  cumbersome to manage if your web application has dozens of **Page Objects** that need to be instantiated and managed.
@@ -285,7 +285,7 @@ cumbersome to manage if your web application has dozens of **Page Objects** that
285
285
  ### Using the PageManager
286
286
 
287
287
  The **PageManager** class provides methods for supporting the instantiation and management of **Page Objects**. In the code example below,
288
- the **`page_objects`** method contains a hash table of your **Page Object** instances and their associated **Page Object** class names
288
+ the `page_objects` method contains a hash table of your **Page Object** instances and their associated **Page Object** class names
289
289
  to be instantiated by **PageManager**:
290
290
 
291
291
  module WorldPages
@@ -307,9 +307,9 @@ to be instantiated by **PageManager**:
307
307
 
308
308
  World(WorldPages)
309
309
 
310
- The **`WorldPages`** module above should be defined in the **`world_pages.rb`** file in the **`features/support`** folder.
310
+ The `WorldPages` module above should be defined in the `world_pages.rb` file in the `features/support` folder.
311
311
 
312
- Include the code below in your **`env.rb`** file to ensure that your **Page Objects** are instantiated before your Cucumber scenarios are
312
+ Include the code below in your `env.rb` file to ensure that your **Page Objects** are instantiated before your Cucumber scenarios are
313
313
  executed:
314
314
 
315
315
  include WorldPages
@@ -319,19 +319,19 @@ executed:
319
319
 
320
320
  ## Connecting to a Web Browser
321
321
 
322
- The **`WebDriverConnect.initialize_web_driver`** method configures the appropriate selenium-webdriver capabilities required to establish a
322
+ The `WebDriverConnect.initialize_web_driver` method configures the appropriate selenium-webdriver capabilities required to establish a
323
323
  connection with a target web browser, and sets the base host URL of the web site you are running your tests against.
324
324
 
325
- The **`WebDriverConnect.initialize_web_driver`** method accepts a single optional parameter - the base host URL. Cucumber **Environment
325
+ The `WebDriverConnect.initialize_web_driver` method accepts a single optional parameter - the base host URL. Cucumber **Environment
326
326
  Variables** are used to specify the target local or remote web browser, and the various webdriver capability parameters required to configure
327
327
  the connection.
328
328
 
329
329
 
330
330
  ### Locally hosted desktop web browser
331
331
 
332
- For locally hosted desktop web browsers, the **`WEB_BROWSER`** Environment Variable must be set to one of the values from the table below:
332
+ For locally hosted desktop web browsers, the `WEB_BROWSER` Environment Variable must be set to one of the values from the table below:
333
333
 
334
- **`WEB_BROWSER`** | Desktop Platform
334
+ `WEB_BROWSER` | Desktop Platform
335
335
  --------------- | ----------------
336
336
  `firefox` | OS X or Windows
337
337
  `chrome` | OS X or Windows
@@ -344,10 +344,10 @@ For locally hosted desktop web browsers, the **`WEB_BROWSER`** Environment Varia
344
344
  ### Locally hosted emulated mobile web browser
345
345
 
346
346
  You can also run your tests against emulated mobile device browsers within a locally hosted instance of the Firefox desktop browser. You may
347
- even specify the emulated device's screen orientation. For locally hosted emulated mobile web browsers, the **`WEB_BROWSER`** Environment Variable
347
+ even specify the emulated device's screen orientation. For locally hosted emulated mobile web browsers, the `WEB_BROWSER` Environment Variable
348
348
  must be set to one of the values from the table below:
349
349
 
350
- **`WEB_BROWSER`** |
350
+ `WEB_BROWSER` |
351
351
  --------------- |
352
352
  `ipad` |
353
353
  `ipad_pro` |
@@ -359,14 +359,14 @@ must be set to one of the values from the table below:
359
359
  `android_phone` |
360
360
  `android_tablet` |
361
361
 
362
- To specify the emulated device's screen orientation, you set the **`ORIENTATION`** Environment Variable to either **`portrait`** or **`landscape`**.
362
+ To specify the emulated device's screen orientation, you set the `ORIENTATION` Environment Variable to either `portrait` or `landscape`.
363
363
 
364
364
 
365
365
  ### Remotely hosted desktop and mobile web browsers
366
366
 
367
367
  You can run your automated tests against remotely hosted desktop and mobile web browsers using the BrowserStack, CrossBrowserTesting,
368
368
  Sauce Labs, or TestingBot services. If your tests are running against a web site hosted on your local computer (localhost), or on a
369
- staging server inside your LAN, you must set the **`TUNNELING`** Environment Variable to **`true`**.
369
+ staging server inside your LAN, you must set the `TUNNELING` Environment Variable to `true`.
370
370
 
371
371
 
372
372
  #### Remote desktop browsers on the BrowserStack service
@@ -376,15 +376,15 @@ the table below. Refer to the [Browserstack-specific capabilities chart page](ht
376
376
 
377
377
  **Environment Variable** | Description
378
378
  --------------- | ----------------
379
- `WEB_BROWSER` | Must be set to **`browserstack`**
379
+ `WEB_BROWSER` | Must be set to `browserstack`
380
380
  `BS_USERNAME` | Must be set to your BrowserStack account user name
381
381
  `BS_AUTHKEY` | Must be set to your BrowserStack account access key
382
- `BS_OS` | Must be set to **`OS X`** or **`Windows`**
383
- `BS_OS_VERSION` | Refer to **`os_version`** capability in chart
384
- `BS_BROWSER` | Refer to **`browser`** capability in chart
385
- `BS_VERSION` | Refer to **`browser_version`** capability in chart
386
- `TUNNELING` | Must be **`true`** if you are testing against internal/local servers
387
- `RESOLUTION` | Refer to supported screen **`resolution`** capability in chart
382
+ `BS_OS` | Must be set to `OS X` or `Windows`
383
+ `BS_OS_VERSION` | Refer to `os_version` capability in chart
384
+ `BS_BROWSER` | Refer to `browser` capability in chart
385
+ `BS_VERSION` | Refer to `browser_version` capability in chart
386
+ `TUNNELING` | Must be `true` if you are testing against internal/local servers
387
+ `RESOLUTION` | Refer to supported screen `resolution` capability in chart
388
388
 
389
389
 
390
390
  #### Remote mobile browsers on the BrowserStack service
@@ -394,14 +394,14 @@ the table below. Refer to the [Browserstack-specific capabilities chart page](ht
394
394
 
395
395
  **Environment Variable** | Description
396
396
  --------------- | ----------------
397
- `WEB_BROWSER` | Must be set to **`browserstack`**
397
+ `WEB_BROWSER` | Must be set to `browserstack`
398
398
  `BS_USERNAME` | Must be set to your BrowserStack account user name
399
399
  `BS_AUTHKEY` | Must be set to your BrowserStack account access key
400
- `BS_BROWSER` | Must be set to **`iPhone`**, **`iPad`**, or **`android`**
401
- `BS_PLATFORM` | Must be set to **`MAC`** (for iOS) or **`ANDROID`**
402
- `BS_DEVICE` | Refer to **`device`** capability in chart
403
- `TUNNELING` | Must be **`true`** if you are testing against internal/local servers
404
- `ORIENTATION` | set to **`portrait`** or **`landscape`**
400
+ `BS_BROWSER` | Must be set to `iPhone`, `iPad`, or `android`
401
+ `BS_PLATFORM` | Must be set to `MAC` (for iOS) or `ANDROID`
402
+ `BS_DEVICE` | Refer to `device` capability in chart
403
+ `TUNNELING` | Must be `true` if you are testing against internal/local servers
404
+ `ORIENTATION` | set to `portrait` or `landscape`
405
405
 
406
406
 
407
407
 
@@ -412,12 +412,12 @@ the table below. Use the Configuration Wizard on the [Start a Selenium Test page
412
412
 
413
413
  **Environment Variable** | Description
414
414
  --------------- | ----------------
415
- `WEB_BROWSER` | Must be set to **`crossbrowser`**
415
+ `WEB_BROWSER` | Must be set to `crossbrowser`
416
416
  `CB_USERNAME` | Must be set to your CrossBrowserTesting account user name or email address
417
417
  `CB_AUTHKEY` | Must be set to your CrossBrowserTesting account access key
418
- `CB_OS` | Refer to **`os_api_name`** capability in the sample script of the Wizard
419
- `CB_BROWSER` | Refer to **`browser_api_name`** capability in the sample script of the Wizard
420
- `RESOLUTION` | Refer to supported **`screen_resolution`** capability in the sample script of the Wizard
418
+ `CB_OS` | Refer to `os_api_name` capability in the sample script of the Wizard
419
+ `CB_BROWSER` | Refer to `browser_api_name` capability in the sample script of the Wizard
420
+ `RESOLUTION` | Refer to supported `screen_resolution` capability in the sample script of the Wizard
421
421
 
422
422
 
423
423
  #### Remote mobile browsers on the CrossBrowserTesting service
@@ -427,12 +427,12 @@ the table below. Use the Configuration Wizard on the [Start a Selenium Test page
427
427
 
428
428
  **Environment Variable** | Description
429
429
  --------------- | ----------------
430
- `WEB_BROWSER` | Must be set to **`crossbrowser`**
430
+ `WEB_BROWSER` | Must be set to `crossbrowser`
431
431
  `CB_USERNAME` | Must be set to your CrossBrowserTesting account user name or email address
432
432
  `CB_AUTHKEY` | Must be set to your CrossBrowserTesting account access key
433
- `CB_PLATFORM` | Refer to **`os_api_name`** capability in the sample script of the Wizard
434
- `CB_BROWSER` | Refer to **`browser_api_name`** capability in the sample script of the Wizard
435
- `RESOLUTION` | Refer to supported **`screen_resolution`** capability in the sample script of the Wizard
433
+ `CB_PLATFORM` | Refer to `os_api_name` capability in the sample script of the Wizard
434
+ `CB_BROWSER` | Refer to `browser_api_name` capability in the sample script of the Wizard
435
+ `RESOLUTION` | Refer to supported `screen_resolution` capability in the sample script of the Wizard
436
436
 
437
437
 
438
438
 
@@ -443,13 +443,13 @@ the table below. Use the Selenium API on the [Platform Configurator page](https:
443
443
 
444
444
  **Environment Variable** | Description
445
445
  --------------- | ----------------
446
- `WEB_BROWSER` | Must be set to **`saucelabs`**
446
+ `WEB_BROWSER` | Must be set to `saucelabs`
447
447
  `SL_USERNAME` | Must be set to your Sauce Labs account user name or email address
448
448
  `SL_AUTHKEY` | Must be set to your Sauce Labs account access key
449
- `SL_OS` | Refer to **`platform`** capability in the Copy Code section of the Platform Configurator page
450
- `SL_BROWSER` | Must be set to **`chrome`**, **`firefox`**, **`safari`**, **`internet explorer`**, or **`edge`**
451
- `SL_VERSION` | Refer to **`version`** capability in the Copy Code section of the Platform Configurator page
452
- `RESOLUTION` | Refer to supported **`screenResolution`** capability in the Copy Code section of the Platform Configurator page
449
+ `SL_OS` | Refer to `platform` capability in the Copy Code section of the Platform Configurator page
450
+ `SL_BROWSER` | Must be set to `chrome`, `firefox`, `safari`, `internet explorer`, or `edge`
451
+ `SL_VERSION` | Refer to `version` capability in the Copy Code section of the Platform Configurator page
452
+ `RESOLUTION` | Refer to supported `screenResolution` capability in the Copy Code section of the Platform Configurator page
453
453
 
454
454
 
455
455
  #### Remote mobile browsers on the Sauce Labs service
@@ -459,15 +459,15 @@ the table below. Use the Selenium API on the [Platform Configurator page](https:
459
459
 
460
460
  **Environment Variable** | Description
461
461
  --------------- | ----------------
462
- `WEB_BROWSER` | Must be set to **`saucelabs`**
462
+ `WEB_BROWSER` | Must be set to `saucelabs`
463
463
  `SL_USERNAME` | Must be set to your Sauce Labs account user name or email address
464
464
  `SL_AUTHKEY` | Must be set to your Sauce Labs account access key
465
- `SL_PLATFORM` | Refer to **`platform`** capability in the Copy Code section of the Platform Configurator page
466
- `SL_BROWSER` | Must be set to **`iPhone`** or **`android`**
467
- `SL_VERSION` | Refer to **`version`** capability in the Copy Code section of the Platform Configurator page
468
- `SL_DEVICE` | Refer to **`deviceName`** capability in the Copy Code section of the Platform Configurator page
469
- `SL_DEVICE_TYPE` | If displayed, refer to **`deviceType`** capability in the Copy Code section of the Platform Configurator page
470
- `ORIENTATION` | Refer to **`deviceOrientation`** capability in the Copy Code section of the Platform Configurator page
465
+ `SL_PLATFORM` | Refer to `platform` capability in the Copy Code section of the Platform Configurator page
466
+ `SL_BROWSER` | Must be set to `iPhone` or `android`
467
+ `SL_VERSION` | Refer to `version` capability in the Copy Code section of the Platform Configurator page
468
+ `SL_DEVICE` | Refer to `deviceName` capability in the Copy Code section of the Platform Configurator page
469
+ `SL_DEVICE_TYPE` | If displayed, refer to `deviceType` capability in the Copy Code section of the Platform Configurator page
470
+ `ORIENTATION` | Refer to `deviceOrientation` capability in the Copy Code section of the Platform Configurator page
471
471
 
472
472
 
473
473
  #### Remote desktop browsers on the TestingBot service
@@ -477,24 +477,24 @@ the table below. Refer to the [TestingBot List of Available Browsers page](https
477
477
 
478
478
  **Environment Variable** | Description
479
479
  --------------- | ----------------
480
- `WEB_BROWSER` | Must be set to **`testingbot`**
480
+ `WEB_BROWSER` | Must be set to `testingbot`
481
481
  `TB_USERNAME` | Must be set to your TestingBot account user name
482
482
  `TB_AUTHKEY` | Must be set to your TestingBot account access key
483
- `TB_OS` | Refer to **`platform`** capability in chart
484
- `TB_BROWSER` | Refer to **`browserName`** capability in chart
485
- `TB_VERSION` | Refer to **`version`** capability in chart
486
- `TUNNELING` | Must be **`true`** if you are testing against internal/local servers
487
- `RESOLUTION` | Possible values: **`800x600`**, **`1024x768`**, **`1280x960`**, **`1280x1024`**, **`1600x1200`**, **`1920x1200`**, **`2560x1440`**
483
+ `TB_OS` | Refer to `platform` capability in chart
484
+ `TB_BROWSER` | Refer to `browserName` capability in chart
485
+ `TB_VERSION` | Refer to `version` capability in chart
486
+ `TUNNELING` | Must be `true` if you are testing against internal/local servers
487
+ `RESOLUTION` | Possible values: `800x600`, `1024x768`, `1280x960`, `1280x1024`, `1600x1200`, `1920x1200`, `2560x1440`
488
488
 
489
489
 
490
490
  ### Using Browser specific Profiles in cucumber.yml
491
491
 
492
492
  While you can set **Environment Variables** in the command line when invoking Cucumber, a preferred method of specifying and managing
493
493
  target web browsers is to create browser specific **Profiles** that set the appropriate **Environment Variables** for each target browser
494
- in your **`cucumber.yml`** file.
494
+ in your `cucumber.yml` file.
495
495
 
496
496
  Below is a list of Cucumber **Profiles** for supported locally and remotely hosted desktop and mobile web browsers (put these in in your
497
- **`cucumber.yml`** file). Before you can use the BrowserStack, CrossBrowserTesting, Sauce Labs, or TestingBot services, you will need to
497
+ `cucumber.yml` file). Before you can use the BrowserStack, CrossBrowserTesting, Sauce Labs, or TestingBot services, you will need to
498
498
  replace the placeholder text with your user account and authorization code for the cloud service(s) that you intend to connect with.
499
499
 
500
500
  <% desktop = "--tags ~@wip --tags ~@failing --tags @desktop --require features" %>
@@ -764,7 +764,7 @@ replace the placeholder text with your user account and authorization code for t
764
764
  tb_edge_win10: --profile tb_win10 TB_BROWSER="microsoftedge" TB_VERSION="13"
765
765
 
766
766
 
767
- To specify a locally hosted target browser using a profile at runtime, you use the flag **`--profile`** or **`-p`** followed by the profile name when
767
+ To specify a locally hosted target browser using a profile at runtime, you use the flag `--profile` or `-p` followed by the profile name when
768
768
  invoking Cucumber in the command line. For instance, the following command invokes Cucumber and specifies that a local instance of Chrome
769
769
  will be used as the target web browser:
770
770
 
@@ -1,3 +1,3 @@
1
1
  module TestCentricityWeb
2
- VERSION = '0.6.4.1'
2
+ VERSION = '0.6.4.2'
3
3
  end
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: testcentricity_web
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.4.1
4
+ version: 0.6.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - A.J. Mrozinski
@@ -181,6 +181,7 @@ files:
181
181
  - lib/testcentricity_web/version.rb
182
182
  - lib/testcentricity_web/webdriver_helper.rb
183
183
  - lib/testcentricity_web/world_extensions.rb
184
+ - testcentricity_web-0.6.4.1.gem
184
185
  - testcentricity_web.gemspec
185
186
  homepage: ''
186
187
  licenses: