testcentricity_web 4.1.10 → 4.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +92 -1
  3. data/README.md +301 -230
  4. data/lib/testcentricity_web/browser_helper.rb +2 -1
  5. data/lib/testcentricity_web/data_objects/environment.rb +0 -3
  6. data/lib/testcentricity_web/version.rb +1 -1
  7. data/lib/testcentricity_web/web_core/page_objects_helper.rb +39 -2
  8. data/lib/testcentricity_web/web_core/webdriver_helper.rb +162 -152
  9. data/lib/testcentricity_web/web_elements/media.rb +108 -0
  10. data/lib/testcentricity_web/web_elements/textfield.rb +28 -0
  11. data/lib/testcentricity_web/web_elements/ui_elements_helper.rb +39 -1
  12. metadata +18 -162
  13. data/.gitignore +0 -39
  14. data/.idea/.name +0 -1
  15. data/.idea/encodings.xml +0 -6
  16. data/.idea/misc.xml +0 -4
  17. data/.idea/modules.xml +0 -8
  18. data/.idea/vcs.xml +0 -7
  19. data/.rspec +0 -4
  20. data/.rubocop.yml +0 -38
  21. data/.ruby-version +0 -1
  22. data/.simplecov +0 -9
  23. data/CODE_OF_CONDUCT.md +0 -13
  24. data/Gemfile +0 -6
  25. data/Rakefile +0 -115
  26. data/config/cucumber.yml +0 -171
  27. data/config/locales/en-US.yml +0 -56
  28. data/config/test_data/LOCAL_data.json +0 -15
  29. data/config/test_data/LOCAL_data.xls +0 -0
  30. data/config/test_data/LOCAL_data.yml +0 -11
  31. data/config/test_data/data.json +0 -25
  32. data/config/test_data/data.xls +0 -0
  33. data/config/test_data/data.yml +0 -20
  34. data/docker-compose.yml +0 -48
  35. data/features/basic_form_page_css.feature +0 -54
  36. data/features/basic_form_page_xpath.feature +0 -26
  37. data/features/custom_controls.feature +0 -29
  38. data/features/media_players.feature +0 -67
  39. data/features/step_definitions/generic_steps.rb.rb +0 -124
  40. data/features/step_definitions/media_steps.rb +0 -30
  41. data/features/support/data/form_data.rb +0 -43
  42. data/features/support/env.rb +0 -53
  43. data/features/support/hooks.rb +0 -270
  44. data/features/support/pages/base_test_page.rb +0 -22
  45. data/features/support/pages/basic_css_form_page.rb +0 -57
  46. data/features/support/pages/basic_form_page.rb +0 -500
  47. data/features/support/pages/basic_xpath_form_page.rb +0 -58
  48. data/features/support/pages/custom_controls_page.rb +0 -263
  49. data/features/support/pages/indexed_sections_page.rb +0 -57
  50. data/features/support/pages/media_test_page.rb +0 -207
  51. data/features/support/sections/header_nav.rb +0 -48
  52. data/features/support/sections/product_card.rb +0 -39
  53. data/features/support/world_data.rb +0 -12
  54. data/features/support/world_pages.rb +0 -18
  55. data/reports/.keep +0 -1
  56. data/spec/fixtures/page_object.rb +0 -22
  57. data/spec/fixtures/section_object.rb +0 -21
  58. data/spec/spec_helper.rb +0 -33
  59. data/spec/testcentricity_web/browser_spec.rb +0 -41
  60. data/spec/testcentricity_web/elements/audio_spec.rb +0 -68
  61. data/spec/testcentricity_web/elements/button_spec.rb +0 -18
  62. data/spec/testcentricity_web/elements/checkbox_spec.rb +0 -33
  63. data/spec/testcentricity_web/elements/file_field_spec.rb +0 -13
  64. data/spec/testcentricity_web/elements/image_spec.rb +0 -33
  65. data/spec/testcentricity_web/elements/label_spec.rb +0 -18
  66. data/spec/testcentricity_web/elements/link_spec.rb +0 -23
  67. data/spec/testcentricity_web/elements/list_spec.rb +0 -13
  68. data/spec/testcentricity_web/elements/radio_spec.rb +0 -28
  69. data/spec/testcentricity_web/elements/ui_element_spec.rb +0 -125
  70. data/spec/testcentricity_web/elements/video_spec.rb +0 -68
  71. data/spec/testcentricity_web/helper_specs/object_helpers_spec.rb +0 -39
  72. data/spec/testcentricity_web/helper_specs/string_helpers_spec.rb +0 -49
  73. data/spec/testcentricity_web/page_object_spec.rb +0 -90
  74. data/spec/testcentricity_web/section_object_spec.rb +0 -72
  75. data/spec/testcentricity_web/version_spec.rb +0 -7
  76. data/spec/testcentricity_web/webdriver_connect/grid_webdriver_spec.rb +0 -72
  77. data/spec/testcentricity_web/webdriver_connect/local_webdriver_spec.rb +0 -86
  78. data/spec/testcentricity_web/webdriver_connect/mobile_webdriver_spec.rb +0 -65
  79. data/test_site/basic_test_page.html +0 -269
  80. data/test_site/chosen/chosen-sprite.png +0 -0
  81. data/test_site/chosen/chosen-sprite@2x.png +0 -0
  82. data/test_site/chosen/chosen.css +0 -496
  83. data/test_site/chosen/chosen.jquery.js +0 -1359
  84. data/test_site/chosen/chosen.jquery.min.js +0 -3
  85. data/test_site/chosen/chosen.min.css +0 -11
  86. data/test_site/chosen/chosen.proto.js +0 -1399
  87. data/test_site/chosen/chosen.proto.min.js +0 -3
  88. data/test_site/chosen/composer.json +0 -36
  89. data/test_site/custom_controls_page.html +0 -629
  90. data/test_site/docsupport/chosen.png +0 -0
  91. data/test_site/docsupport/init.js +0 -11
  92. data/test_site/docsupport/init.proto.js +0 -16
  93. data/test_site/docsupport/jquery-1.12.4.min.js +0 -5
  94. data/test_site/docsupport/jquery-3.2.1.min.js +0 -4
  95. data/test_site/docsupport/oss-credit.png +0 -0
  96. data/test_site/docsupport/prism.css +0 -108
  97. data/test_site/docsupport/prism.js +0 -9
  98. data/test_site/docsupport/prototype-1.7.0.0.js +0 -6082
  99. data/test_site/docsupport/style.css +0 -219
  100. data/test_site/images/Blouse_Black.jpg +0 -0
  101. data/test_site/images/Granny.jpg +0 -0
  102. data/test_site/images/Printed_Dress.jpg +0 -0
  103. data/test_site/images/T-shirt.jpg +0 -0
  104. data/test_site/images/Wilder.jpg +0 -0
  105. data/test_site/images/You_Betcha.jpg +0 -0
  106. data/test_site/images/jeans3.jpg +0 -0
  107. data/test_site/indexed_sections_page.html +0 -215
  108. data/test_site/media/MIB2-subtitles-pt-BR.vtt +0 -49
  109. data/test_site/media/MIB2.mp4 +0 -0
  110. data/test_site/media/MP4_small.mp4 +0 -0
  111. data/test_site/media/MPS_sample.mp3 +0 -0
  112. data/test_site/media/bbc_scotland_report.mp3 +0 -0
  113. data/test_site/media/count_and_bars.mp4 +0 -0
  114. data/test_site/media_page.html +0 -86
  115. data/testcentricity_web.gemspec +0 -59
data/Rakefile DELETED
@@ -1,115 +0,0 @@
1
- require 'rubygems'
2
- require 'cucumber'
3
- require 'cucumber/rake/task'
4
- require 'docker/compose'
5
- require 'parallel_tests'
6
- require 'rake'
7
- require 'rspec/core/rake_task'
8
- require 'simplecov'
9
- require 'yard'
10
-
11
-
12
- desc 'Run required specs'
13
- RSpec::Core::RakeTask.new(:required_specs) do |t|
14
- t.rspec_opts = '--tag required'
15
- end
16
-
17
-
18
- desc 'Run grid WebDriver specs'
19
- RSpec::Core::RakeTask.new(:grid_specs) do |t|
20
- t.rspec_opts = '--tag grid'
21
- end
22
-
23
-
24
- desc 'Run mobile WebDriver specs'
25
- RSpec::Core::RakeTask.new(:mobile_specs) do |t|
26
- t.rspec_opts = '--tag mobile'
27
- end
28
-
29
-
30
- desc 'Run Cucumber features on local Safari browser'
31
- Cucumber::Rake::Task.new(:safari_local) do |t|
32
- t.profile = 'safari_local'
33
- end
34
-
35
-
36
- desc 'Run Cucumber features on iOS simulator'
37
- Cucumber::Rake::Task.new(:ios_remote) do |t|
38
- t.profile = 'ios_remote'
39
- end
40
-
41
-
42
- desc 'Run required Cucumber features on local web browsers'
43
- task :required_cukes do
44
- %w[chrome_local chrome_headless firefox_local firefox_headless edge_local edge_headless ipad_pro_12_local].each do |profile|
45
- system "parallel_cucumber features/ -o '-p #{profile}' -n 6 --group-by scenarios"
46
- end
47
- end
48
-
49
-
50
- desc 'Run grid Cucumber features on Dockerized Selenium 4 Grid'
51
- task :grid_cukes do
52
- # start up Selenium 4 Grid
53
- compose = Docker::Compose.new
54
- compose.version
55
- compose.up(detached: true)
56
- # run grid features
57
- %w[chrome_grid firefox_grid edge_grid ipad_pro_12_grid].each do |profile|
58
- system "parallel_cucumber features/ -o '-p #{profile}' -n 4 --group-by scenarios"
59
- end
60
- # shut down Selenium Grid
61
- compose.down(remove_volumes: true)
62
- end
63
-
64
-
65
- desc 'Run grid specs on Dockerized Selenium 4 Grid'
66
- task :docker_grid_specs do
67
- # start up Selenium 4 Grid
68
- compose = Docker::Compose.new
69
- compose.version
70
- compose.up(detached: true)
71
- # run grid specs
72
- Rake::Task[:grid_specs].invoke
73
- # shut down Selenium Grid
74
- compose.down(remove_volumes: true)
75
- end
76
-
77
-
78
- desc 'Run mobile web specs and Cucumber features'
79
- task mobile: [:mobile_specs, :ios_remote]
80
-
81
-
82
- desc 'Run required specs and Cucumber features'
83
- task required: [:required_specs, :required_cukes]
84
-
85
-
86
- desc 'Run grid specs and Cucumber features on Dockerized Selenium 4 Grid'
87
- task grid: [:docker_grid_specs, :grid_cukes]
88
-
89
-
90
- desc 'Run all specs'
91
- task all_specs: [:required_specs, :docker_grid_specs, :mobile_specs]
92
-
93
-
94
- desc 'Run all specs and Cucumber features'
95
- task all: [:required, :safari_local, :grid, :mobile]
96
-
97
-
98
- desc 'Update HTML docs'
99
- YARD::Rake::YardocTask.new(:docs) do |t|
100
- t.files = ['lib/**/*.rb']
101
- end
102
-
103
-
104
- desc 'Build and release new version'
105
- task :release do
106
- version = TestCentricityWeb::VERSION
107
- puts "Releasing #{version}, y/n?"
108
- exit(1) unless $stdin.gets.chomp == 'y'
109
- sh 'gem build testcentricity_web.gemspec && ' \
110
- "gem push testcentricity_web-#{version}.gem"
111
- end
112
-
113
-
114
- desc 'Update docs, build gem, and push to RubyGems'
115
- task ship_it: [:docs, :release]
data/config/cucumber.yml DELETED
@@ -1,171 +0,0 @@
1
- <% desktop = "--require features BROWSER_TILE=true BROWSER_SIZE=1300,1000 --publish-quiet" %>
2
- <% mobile = "--require features BROWSER_TILE=true --publish-quiet" %>
3
- <% reports = "--require features --format pretty --format html --out reports/test_results.html --format junit --out reports --format json --out reports/test_results.json" %>
4
-
5
-
6
- #==============
7
- # generic test context profiles
8
- #==============
9
-
10
- failing: --tags '@failing and not @wip'
11
- wip: --tags '@wip and not @failing'
12
- dev: --tags '@dev and (not @wip and not @failing)'
13
-
14
-
15
- #==============
16
- # test reporting profiles
17
- #==============
18
-
19
- report: <%= reports %> REPORTING=true
20
- parallel: PARALLEL=true REPORTING=true --require features --format pretty --format html --out reports/test_results<%= ENV['TEST_ENV_NUMBER'] %>.html --format junit --out reports --format json --out reports/test_results<%= ENV['TEST_ENV_NUMBER'] %>.json
21
-
22
-
23
- #==============
24
- # profiles for locally hosted desktop web browsers
25
- #==============
26
-
27
- local: TEST_ENVIRONMENT=LOCAL
28
- chrome: WEB_BROWSER=chrome DATA_SOURCE=yaml <%= desktop %>
29
- edge: WEB_BROWSER=edge DATA_SOURCE=json <%= desktop %>
30
- safari: WEB_BROWSER=safari DATA_SOURCE=Excel <%= desktop %>
31
- firefox: WEB_BROWSER=firefox <%= desktop %>
32
-
33
- chrome_local: --profile local --profile chrome
34
- edge_local: --profile local --profile edge
35
- safari_local: --profile local --profile safari
36
- firefox_local: --profile local --profile firefox
37
-
38
- firefox_headless: --profile local WEB_BROWSER=firefox_headless <%= desktop %>
39
- chrome_headless: --profile local WEB_BROWSER=chrome_headless <%= desktop %>
40
- edge_headless: --profile local WEB_BROWSER=edge_headless <%= desktop %>
41
-
42
-
43
- #==============
44
- # profile for Selenium Grid and Dockerized Selenium Grid hosted desktop web browsers
45
- #==============
46
- grid: SELENIUM=remote TEST_ENVIRONMENT=REMOTE REMOTE_ENDPOINT="http://localhost:4444/wd/hub"
47
- chrome_grid: --profile grid --profile chrome
48
- edge_grid: --profile grid --profile edge
49
- firefox_grid: --profile grid --profile firefox
50
-
51
-
52
- #==============
53
- # profiles for mobile device screen orientation
54
- #==============
55
-
56
- landscape: ORIENTATION=landscape
57
- portrait: ORIENTATION=portrait
58
-
59
-
60
- #==============
61
- # profiles for locally hosted mobile web browsers (emulated locally in Chrome browser)
62
- #==============
63
-
64
- ipad_pro_11_local: --profile local WEB_BROWSER=ipad_pro_11 HOST_BROWSER=chrome --profile portrait <%= mobile %>
65
- ipad_pro_12_local: --profile local WEB_BROWSER=ipad_pro_12_9 HOST_BROWSER=chrome --profile portrait <%= mobile %>
66
- ipad_pro_12_grid: --profile grid WEB_BROWSER=ipad_pro_12_9 HOST_BROWSER=chrome --profile portrait <%= mobile %>
67
-
68
-
69
- #==============
70
- # profile to start Appium Server prior to running mobile browser tests on iOS or Android simulators or physical devices
71
- #==============
72
- run_appium: APPIUM_SERVER=run
73
-
74
-
75
- #==============
76
- # profiles for mobile Safari web browsers hosted within XCode iOS simulators
77
- # NOTE: Requires installation of XCode, iOS version specific target simulators, Appium, and the appium_capybara gem
78
- #==============
79
-
80
- appium_ios: WEB_BROWSER=appium AUTOMATION_ENGINE=XCUITest APP_PLATFORM_NAME="ios" APP_BROWSER="Safari" NEW_COMMAND_TIMEOUT=30 SHOW_SIM_KEYBOARD=false <%= mobile %>
81
- app_ios_15: --profile appium_ios APP_VERSION="15.4"
82
-
83
- ipad_pro_12_15_sim: --profile app_ios_15 DEVICE_TYPE=tablet APP_DEVICE="iPad Pro (12.9-inch) (5th generation)"
84
- ipad_air_15_sim: --profile app_ios_15 DEVICE_TYPE=tablet APP_DEVICE="iPad Air (5th generation)" <%= desktop %>
85
-
86
- ios_remote: --profile ipad_pro_12_15_sim --profile run_appium ORIENTATION=portrait TEST_ENVIRONMENT=REMOTE
87
-
88
-
89
- #==============
90
- # profiles for Android mobile web browsers hosted within Android Studio Android Virtual Device emulators
91
- # NOTE: Requires installation of Android Studio, Android version specific virtual device simulators, Appium, and the appium_capybara gem
92
- #==============
93
-
94
- appium_android: WEB_BROWSER=appium APP_PLATFORM_NAME="Android" <%= mobile %>
95
- app_android_12: --profile appium_android APP_BROWSER="Chrome" APP_VERSION="12.0"
96
- pixel_c_api31_sim: --profile app_android_12 DEVICE_TYPE=tablet APP_DEVICE="Pixel_C_API_31"
97
-
98
- android_remote: --profile pixel_c_api31_sim --profile run_appium ORIENTATION=portrait TEST_ENVIRONMENT=REMOTE
99
-
100
-
101
- #==============
102
- # profiles for remotely hosted web browsers on the BrowserStack service
103
- #==============
104
-
105
- browserstack: WEB_BROWSER=browserstack BS_USERNAME="<INSERT USER NAME HERE>" BS_AUTHKEY="<INSERT PASSWORD HERE>" AUTOMATE_PROJECT="TC_Web_Sample - BrowserStack"
106
- bs_desktop: --profile browserstack <%= desktop %> RESOLUTION="1920x1080"
107
- bs_mobile: --profile browserstack <%= mobile %>
108
-
109
- # BrowserStack macOS desktop browser profiles
110
- bs_macos_monterey: --profile bs_desktop BS_OS="OS X" BS_OS_VERSION="Monterey"
111
- bs_chrome_monterey: --profile bs_macos_monterey BS_BROWSER="Chrome" BS_VERSION="latest"
112
- bs_edge_monterey: --profile bs_macos_monterey BS_BROWSER="Edge" BS_VERSION="latest"
113
- bs_safari_monterey: --profile bs_macos_monterey BS_BROWSER="Safari" BS_VERSION="latest"
114
-
115
- # BrowserStack iOS mobile browser profiles
116
- bs_ipad: --profile bs_mobile BS_OS=ios BS_BROWSER=Safari DEVICE_TYPE=tablet BS_REAL_MOBILE="true"
117
- bs_ipad_pro_12: --profile bs_ipad BS_DEVICE="iPad Pro 12.9 2018" BS_OS_VERSION="15"
118
-
119
- # BrowserStack Android mobile browser profiles
120
- bs_android: --profile bs_mobile BS_OS=android BS_BROWSER=Chrome DEVICE_TYPE=tablet BS_REAL_MOBILE="true"
121
- bs_android_tablet: --profile bs_android BS_DEVICE="Samsung Galaxy Tab S7" BS_OS_VERSION="10.0"
122
-
123
-
124
- #==============
125
- # profiles for remotely hosted web browsers on the LambdaTest service
126
- #==============
127
-
128
- lambdatest: WEB_BROWSER=lambdatest LT_USERNAME="<INSERT USER NAME HERE>" LT_AUTHKEY="<INSERT PASSWORD HERE>" AUTOMATE_PROJECT="TC_Web_Sample - LambdaTest"
129
- lt_desktop: --profile lambdatest <%= desktop %> RESOLUTION="2560x1440"
130
-
131
- # LambdaTest macOS desktop browser profiles
132
- lt_macos_monterey: --profile lt_desktop LT_OS="MacOS Monterey"
133
- lt_chrome_monterey: --profile lt_macos_monterey LT_BROWSER="Chrome" LT_VERSION="98.0"
134
- lt_edge_monterey: --profile lt_macos_monterey LT_BROWSER="MicrosoftEdge" LT_VERSION="97.0"
135
-
136
-
137
- #==============
138
- # profiles for remotely hosted web browsers on the TestingBot service
139
- #==============
140
-
141
- testingbot: WEB_BROWSER=testingbot TB_USERNAME="<INSERT USER NAME HERE>" TB_AUTHKEY="<INSERT PASSWORD HERE>" AUTOMATE_PROJECT="TC_Web_Sample - TestingBot"
142
- tb_desktop: --profile testingbot <%= desktop %> RESOLUTION="1920x1200"
143
-
144
- # TestingBot macOS desktop browser profiles
145
- tb_macos_monterey: --profile tb_desktop TB_OS="MONTEREY"
146
- tb_chrome_monterey: --profile tb_macos_monterey TB_BROWSER="chrome" TB_VERSION="latest"
147
- tb_edge_monterey: --profile tb_macos_monterey TB_BROWSER="microsoftedge" TB_VERSION="latest"
148
-
149
-
150
- #==============
151
- # profiles for remotely hosted web browsers on the SauceLabs service
152
- #==============
153
-
154
- saucelabs: WEB_BROWSER=saucelabs SL_USERNAME="<INSERT USER NAME HERE>" SL_AUTHKEY="<INSERT PASSWORD HERE>" DATA_CENTER="us-west-1" AUTOMATE_PROJECT="TC_Web_Sample - SauceLabs"
155
- sl_desktop: --profile saucelabs <%= desktop %>
156
- sl_mobile: --profile saucelabs <%= mobile %>
157
-
158
- # SauceLabs macOS desktop browser profiles
159
- sl_macos_monterey: --profile sl_desktop SL_OS="macOS 12" RESOLUTION="1920x1440"
160
- sl_chrome_monterey: --profile sl_macos_monterey SL_BROWSER="chrome" SL_VERSION="latest"
161
- sl_edge_monterey: --profile sl_macos_monterey SL_BROWSER="MicrosoftEdge" SL_VERSION="latest"
162
- sl_firefox_monterey: --profile sl_macos_monterey SL_BROWSER="Firefox" SL_VERSION="latest"
163
-
164
- # SauceLabs Windows desktop browser profiles
165
- sl_windows: --profile sl_desktop RESOLUTION="1920x1200"
166
- sl_edge_win11: --profile sl_windows SL_OS="Windows 11" SL_BROWSER="MicrosoftEdge" SL_VERSION="latest"
167
- sl_ie_win10: --profile sl_windows SL_OS="Windows 10" SL_BROWSER="internet explorer" SL_VERSION="11"
168
-
169
- # SauceLabs iOS mobile browser profiles
170
- sl_ipad: --profile sl_mobile DEVICE_TYPE=tablet SL_PLATFORM=iOS SL_BROWSER=Safari
171
- sl_ipad_pro_12: --profile sl_ipad SL_DEVICE="iPad Pro (12.9 inch) (5th generation) Simulator" SL_VERSION="15.0"
@@ -1,56 +0,0 @@
1
- # Localization file for English/U.S. locale.
2
-
3
- en-US:
4
- time:
5
- formats:
6
- default: "%m/%d/%Y"
7
- long: "%B %d, %Y"
8
- short: "%b %d"
9
- abbrev: "%b %d, %Y"
10
- abbrev_month: "%b"
11
- month_year: "%B %Y"
12
- date:
13
- abbr_day_names:
14
- - Sun
15
- - Mon
16
- - Tue
17
- - Wed
18
- - Thu
19
- - Fri
20
- - Sat
21
- abbr_month_names:
22
- -
23
- - Jan
24
- - Feb
25
- - Mar
26
- - Apr
27
- - May
28
- - Jun
29
- - Jul
30
- - Aug
31
- - Sep
32
- - Oct
33
- - Nov
34
- - Dec
35
- day_names:
36
- - Sunday
37
- - Monday
38
- - Tuesday
39
- - Wednesday
40
- - Thursday
41
- - Friday
42
- - Saturday
43
- month_names:
44
- -
45
- - January
46
- - February
47
- - March
48
- - April
49
- - May
50
- - June
51
- - July
52
- - August
53
- - September
54
- - October
55
- - November
56
- - December
@@ -1,15 +0,0 @@
1
- {
2
- "Form_data": {
3
- "primary": {
4
- "username": "Thaddeus Eumbwebwe",
5
- "password": "Pa55w0rd",
6
- "image_filename": "Granny.jpg",
7
- "multi_select": "Selection Item 3",
8
- "drop_down_item": "Drop Down Item 3",
9
- "check1": false,
10
- "check2": true,
11
- "check3": true,
12
- "radio_select": 1
13
- }
14
- }
15
- }
Binary file
@@ -1,11 +0,0 @@
1
- Form_data:
2
- primary:
3
- username: "Ignatius von Snicklefritz"
4
- password: "T0p_Sekrit"
5
- image_filename: "Wilder.jpg"
6
- multi_select: "Selection Item 2"
7
- drop_down_item: "Drop Down Item 5"
8
- check1: true
9
- check2: true
10
- check3: false
11
- radio_select: 2
@@ -1,25 +0,0 @@
1
- {
2
- "Environments": {
3
- "LOCAL": {
4
- "PROTOCOL": "file",
5
- "BASE_URL": "/../../test_site"
6
- },
7
- "REMOTE": {
8
- "PROTOCOL": "http",
9
- "BASE_URL": "192.168.1.129/test_site"
10
- }
11
- },
12
- "Form_data": {
13
- "primary": {
14
- "username": "Thaddeus Eumbwebwe",
15
- "password": "Pa55w0rd",
16
- "image_filename": "Granny.jpg",
17
- "multi_select": "Selection Item 3",
18
- "drop_down_item": "Drop Down Item 3",
19
- "check1": false,
20
- "check2": true,
21
- "check3": true,
22
- "radio_select": 1
23
- }
24
- }
25
- }
Binary file
@@ -1,20 +0,0 @@
1
- # This section is populated with Environment data required to execute automated test suites on all supported environments
2
- Environments:
3
- LOCAL:
4
- PROTOCOL: "file"
5
- BASE_URL: "/../../test_site"
6
- REMOTE:
7
- PROTOCOL: "http"
8
- BASE_URL: "192.168.1.129/test_site"
9
-
10
- Form_data:
11
- primary:
12
- username: "Xavier Snicklefritz"
13
- password: "Pa55W0rd"
14
- image_filename: "Wilder.jpg"
15
- multi_select: "Selection Item 1"
16
- drop_down_item: "Drop Down Item 2"
17
- check1: true
18
- check2: true
19
- check3: true
20
- radio_select: 3
data/docker-compose.yml DELETED
@@ -1,48 +0,0 @@
1
- # To execute this docker-compose yml file use `docker-compose -f docker-compose.yml up`
2
- # Add the `-d` flag at the end for detached execution
3
- # To stop the execution, hit Ctrl+C, and then `docker-compose -f docker-compose.yml down`
4
- version: "3"
5
- services:
6
- chrome:
7
- image: selenium/node-chrome:4.1.2-20220217
8
- shm_size: 2gb
9
- depends_on:
10
- - selenium-hub
11
- environment:
12
- - SE_EVENT_BUS_HOST=selenium-hub
13
- - SE_EVENT_BUS_PUBLISH_PORT=4442
14
- - SE_EVENT_BUS_SUBSCRIBE_PORT=4443
15
- - SE_NODE_MAX_SESSIONS=4
16
- - SE_NODE_OVERRIDE_MAX_SESSIONS=true
17
-
18
- edge:
19
- image: selenium/node-edge:4.1.2-20220217
20
- shm_size: 2gb
21
- depends_on:
22
- - selenium-hub
23
- environment:
24
- - SE_EVENT_BUS_HOST=selenium-hub
25
- - SE_EVENT_BUS_PUBLISH_PORT=4442
26
- - SE_EVENT_BUS_SUBSCRIBE_PORT=4443
27
- - SE_NODE_MAX_SESSIONS=4
28
- - SE_NODE_OVERRIDE_MAX_SESSIONS=true
29
-
30
- firefox:
31
- image: selenium/node-firefox:4.1.2-20220217
32
- shm_size: 2gb
33
- depends_on:
34
- - selenium-hub
35
- environment:
36
- - SE_EVENT_BUS_HOST=selenium-hub
37
- - SE_EVENT_BUS_PUBLISH_PORT=4442
38
- - SE_EVENT_BUS_SUBSCRIBE_PORT=4443
39
- - SE_NODE_MAX_SESSIONS=4
40
- - SE_NODE_OVERRIDE_MAX_SESSIONS=true
41
-
42
- selenium-hub:
43
- image: selenium/hub:4.1.2-20220217
44
- container_name: selenium-hub
45
- ports:
46
- - "4442:4442"
47
- - "4443:4443"
48
- - "4444:4444"
@@ -1,54 +0,0 @@
1
- Feature: Basic HTML Form Test Page using CSS locators
2
- In order to ensure comprehensive support for HTML UI elements and forms
3
- As a developer of the TestCentricity web gem
4
- I expect to validate the interaction and verification capabilities of typical HTML form UI elements
5
-
6
-
7
- Background:
8
- Given I am on the Basic CSS Form page
9
-
10
-
11
- Scenario: Validate verify_ui_states method and associated object state verification methods
12
- Then I expect the Basic CSS Form page to be correctly displayed
13
-
14
-
15
- @!mobile @!firefox_headless @!firefox_grid
16
- Scenario: Validate verify_focus_order method
17
- Then I expect the tab order to be correct
18
-
19
-
20
- Scenario: Validate populate_data_fields method and associated object action methods
21
- When I populate the form fields
22
- Then I expect the form fields to be correctly populated
23
- When I cancel my changes
24
- Then I expect the Basic CSS Form page to be correctly displayed
25
-
26
-
27
- Scenario Outline: Choose selectlist options by index, value, and text
28
- When I choose selectlist options by <method>
29
- Then I expect the selected option to be displayed
30
-
31
- Examples:
32
- |method |
33
- |index |
34
- |text |
35
-
36
- @!safari @!firefox @!firefox_headless
37
- Examples:
38
- |method |
39
- |value |
40
-
41
-
42
- Scenario Outline: Verify functionality of navigation tabs and browser back/forward
43
- When I click the <target_page> navigation tab
44
- Then I expect the <target_page> page to be correctly displayed
45
- When I navigate back
46
- Then I should be on the Basic CSS Form page
47
- When I navigate forward
48
- Then I should be on the <target_page> page
49
-
50
- Examples:
51
- |target_page |
52
- |Media Test |
53
- |Indexed Sections |
54
- |Custom Controls |
@@ -1,26 +0,0 @@
1
- @!grid @!mobile @!headless
2
-
3
-
4
- Feature: Basic HTML Form Test Page using Xpath locators
5
- In order to ensure comprehensive support for HTML UI elements and forms
6
- As a developer of the TestCentricity web gem
7
- I expect to validate the interaction and verification capabilities of typical HTML form UI elements
8
-
9
-
10
- Background:
11
- Given I am on the Basic Xpath Form page
12
-
13
-
14
- Scenario: Validate verify_ui_states method and associated object state verification methods
15
- Then I expect the Basic Xpath Form page to be correctly displayed
16
-
17
-
18
- Scenario: Validate verify_focus_order method
19
- Then I expect the tab order to be correct
20
-
21
-
22
- Scenario: Validate populate_data_fields method and associated object action methods
23
- When I populate the form fields
24
- Then I expect the form fields to be correctly populated
25
- When I cancel my changes
26
- Then I expect the Basic Xpath Form page to be correctly displayed
@@ -1,29 +0,0 @@
1
- Feature: Custom Controls
2
- In order to ensure comprehensive support for custom UI elements
3
- As a developer of the TestCentricity web gem
4
- I expect to validate the interaction and verification capabilities of custom UI elements
5
-
6
-
7
- Background:
8
- Given I am on the Custom Controls page
9
-
10
-
11
- Scenario: Validate populate_data_fields method and associated object action methods
12
- When I populate the form fields
13
- Then I expect the form fields to be correctly populated
14
-
15
-
16
- @!safari @!firefox @!firefox_headless @!ios
17
- Scenario: Use custom select list input field to choose options
18
- When I choose custom select options by typing
19
- Then I expect the form fields to be correctly populated
20
-
21
-
22
- Scenario Outline: Choose selectlist options by index and text
23
- When I choose selectlist options by <method>
24
- Then I expect the selected option to be displayed
25
-
26
- Examples:
27
- |method |
28
- |index |
29
- |text |
@@ -1,67 +0,0 @@
1
- @!grid @!mobile
2
-
3
-
4
- Feature: HTML5 Audio/Video Test Page using CSS locators
5
- In order to ensure comprehensive support for HTML5 Audio and Video media elements
6
- As a developer of the TestCentricity web gem
7
- I expect to validate the interaction and verification capabilities of media UI elements
8
-
9
-
10
- Background:
11
- Given I am on the Media Test page
12
-
13
-
14
- Scenario: Verify video player play and pause controls
15
- When I play the video media
16
- Then the video should be playing
17
- When I pause the video media
18
- Then the video should be paused
19
-
20
-
21
- Scenario: Verify audio player play and pause controls
22
- When I play the audio media
23
- Then the audio should be playing
24
- When I pause the audio media
25
- Then the audio should be paused
26
-
27
-
28
- Scenario: Verify video player mute control
29
- When I mute the video media
30
- Then the video should be muted
31
- When I unmute the video media
32
- Then the video should be unmuted
33
-
34
-
35
- Scenario: Verify audio player mute control
36
- When I mute the audio media
37
- Then the audio should be muted
38
- When I unmute the audio media
39
- Then the audio should be unmuted
40
-
41
-
42
- Scenario: Verify video player volume control
43
- When I set the volume of the video to .5
44
- Then the video should have a volume of .5
45
-
46
-
47
- Scenario: Verify audio player volume control
48
- When I set the volume of the audio to .5
49
- Then the audio should have a volume of .5
50
-
51
-
52
- Scenario: Verify video playback speed settings
53
- When I play the video with a playback speed of 2x
54
- Then the video should play at 2x speed
55
- When I play the video with a playback speed of 0.5x
56
- Then the video should play at 0.5x speed
57
- When I play the video with a playback speed of 1x
58
- Then the video should play at 1x speed
59
-
60
-
61
- Scenario: Verify audio playback speed settings
62
- When I play the audio with a playback speed of 2x
63
- Then the audio should play at 2x speed
64
- When I play the audio with a playback speed of 0.5x
65
- Then the audio should play at 0.5x speed
66
- When I play the audio with a playback speed of 1x
67
- Then the audio should play at 1x speed