testcentricity_web 4.1.10 → 4.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +75 -1
  3. data/README.md +73 -35
  4. data/lib/testcentricity_web/data_objects/environment.rb +0 -1
  5. data/lib/testcentricity_web/version.rb +1 -1
  6. data/lib/testcentricity_web/web_core/page_objects_helper.rb +39 -2
  7. data/lib/testcentricity_web/web_core/webdriver_helper.rb +67 -61
  8. data/lib/testcentricity_web/web_elements/media.rb +108 -0
  9. data/lib/testcentricity_web/web_elements/textfield.rb +28 -0
  10. data/lib/testcentricity_web/web_elements/ui_elements_helper.rb +39 -1
  11. metadata +6 -150
  12. data/.gitignore +0 -39
  13. data/.idea/.name +0 -1
  14. data/.idea/encodings.xml +0 -6
  15. data/.idea/misc.xml +0 -4
  16. data/.idea/modules.xml +0 -8
  17. data/.idea/vcs.xml +0 -7
  18. data/.rspec +0 -4
  19. data/.rubocop.yml +0 -38
  20. data/.ruby-version +0 -1
  21. data/.simplecov +0 -9
  22. data/CODE_OF_CONDUCT.md +0 -13
  23. data/Gemfile +0 -6
  24. data/Rakefile +0 -115
  25. data/config/cucumber.yml +0 -171
  26. data/config/locales/en-US.yml +0 -56
  27. data/config/test_data/LOCAL_data.json +0 -15
  28. data/config/test_data/LOCAL_data.xls +0 -0
  29. data/config/test_data/LOCAL_data.yml +0 -11
  30. data/config/test_data/data.json +0 -25
  31. data/config/test_data/data.xls +0 -0
  32. data/config/test_data/data.yml +0 -20
  33. data/docker-compose.yml +0 -48
  34. data/features/basic_form_page_css.feature +0 -54
  35. data/features/basic_form_page_xpath.feature +0 -26
  36. data/features/custom_controls.feature +0 -29
  37. data/features/media_players.feature +0 -67
  38. data/features/step_definitions/generic_steps.rb.rb +0 -124
  39. data/features/step_definitions/media_steps.rb +0 -30
  40. data/features/support/data/form_data.rb +0 -43
  41. data/features/support/env.rb +0 -53
  42. data/features/support/hooks.rb +0 -270
  43. data/features/support/pages/base_test_page.rb +0 -22
  44. data/features/support/pages/basic_css_form_page.rb +0 -57
  45. data/features/support/pages/basic_form_page.rb +0 -500
  46. data/features/support/pages/basic_xpath_form_page.rb +0 -58
  47. data/features/support/pages/custom_controls_page.rb +0 -263
  48. data/features/support/pages/indexed_sections_page.rb +0 -57
  49. data/features/support/pages/media_test_page.rb +0 -207
  50. data/features/support/sections/header_nav.rb +0 -48
  51. data/features/support/sections/product_card.rb +0 -39
  52. data/features/support/world_data.rb +0 -12
  53. data/features/support/world_pages.rb +0 -18
  54. data/reports/.keep +0 -1
  55. data/spec/fixtures/page_object.rb +0 -22
  56. data/spec/fixtures/section_object.rb +0 -21
  57. data/spec/spec_helper.rb +0 -33
  58. data/spec/testcentricity_web/browser_spec.rb +0 -41
  59. data/spec/testcentricity_web/elements/audio_spec.rb +0 -68
  60. data/spec/testcentricity_web/elements/button_spec.rb +0 -18
  61. data/spec/testcentricity_web/elements/checkbox_spec.rb +0 -33
  62. data/spec/testcentricity_web/elements/file_field_spec.rb +0 -13
  63. data/spec/testcentricity_web/elements/image_spec.rb +0 -33
  64. data/spec/testcentricity_web/elements/label_spec.rb +0 -18
  65. data/spec/testcentricity_web/elements/link_spec.rb +0 -23
  66. data/spec/testcentricity_web/elements/list_spec.rb +0 -13
  67. data/spec/testcentricity_web/elements/radio_spec.rb +0 -28
  68. data/spec/testcentricity_web/elements/ui_element_spec.rb +0 -125
  69. data/spec/testcentricity_web/elements/video_spec.rb +0 -68
  70. data/spec/testcentricity_web/helper_specs/object_helpers_spec.rb +0 -39
  71. data/spec/testcentricity_web/helper_specs/string_helpers_spec.rb +0 -49
  72. data/spec/testcentricity_web/page_object_spec.rb +0 -90
  73. data/spec/testcentricity_web/section_object_spec.rb +0 -72
  74. data/spec/testcentricity_web/version_spec.rb +0 -7
  75. data/spec/testcentricity_web/webdriver_connect/grid_webdriver_spec.rb +0 -72
  76. data/spec/testcentricity_web/webdriver_connect/local_webdriver_spec.rb +0 -86
  77. data/spec/testcentricity_web/webdriver_connect/mobile_webdriver_spec.rb +0 -65
  78. data/test_site/basic_test_page.html +0 -269
  79. data/test_site/chosen/chosen-sprite.png +0 -0
  80. data/test_site/chosen/chosen-sprite@2x.png +0 -0
  81. data/test_site/chosen/chosen.css +0 -496
  82. data/test_site/chosen/chosen.jquery.js +0 -1359
  83. data/test_site/chosen/chosen.jquery.min.js +0 -3
  84. data/test_site/chosen/chosen.min.css +0 -11
  85. data/test_site/chosen/chosen.proto.js +0 -1399
  86. data/test_site/chosen/chosen.proto.min.js +0 -3
  87. data/test_site/chosen/composer.json +0 -36
  88. data/test_site/custom_controls_page.html +0 -629
  89. data/test_site/docsupport/chosen.png +0 -0
  90. data/test_site/docsupport/init.js +0 -11
  91. data/test_site/docsupport/init.proto.js +0 -16
  92. data/test_site/docsupport/jquery-1.12.4.min.js +0 -5
  93. data/test_site/docsupport/jquery-3.2.1.min.js +0 -4
  94. data/test_site/docsupport/oss-credit.png +0 -0
  95. data/test_site/docsupport/prism.css +0 -108
  96. data/test_site/docsupport/prism.js +0 -9
  97. data/test_site/docsupport/prototype-1.7.0.0.js +0 -6082
  98. data/test_site/docsupport/style.css +0 -219
  99. data/test_site/images/Blouse_Black.jpg +0 -0
  100. data/test_site/images/Granny.jpg +0 -0
  101. data/test_site/images/Printed_Dress.jpg +0 -0
  102. data/test_site/images/T-shirt.jpg +0 -0
  103. data/test_site/images/Wilder.jpg +0 -0
  104. data/test_site/images/You_Betcha.jpg +0 -0
  105. data/test_site/images/jeans3.jpg +0 -0
  106. data/test_site/indexed_sections_page.html +0 -215
  107. data/test_site/media/MIB2-subtitles-pt-BR.vtt +0 -49
  108. data/test_site/media/MIB2.mp4 +0 -0
  109. data/test_site/media/MP4_small.mp4 +0 -0
  110. data/test_site/media/MPS_sample.mp3 +0 -0
  111. data/test_site/media/bbc_scotland_report.mp3 +0 -0
  112. data/test_site/media/count_and_bars.mp4 +0 -0
  113. data/test_site/media_page.html +0 -86
  114. data/testcentricity_web.gemspec +0 -59
data/.rubocop.yml DELETED
@@ -1,38 +0,0 @@
1
- # See full list of defaults here: https://github.com/bbatsov/rubocop/blob/master/config/default.yml
2
- # To see all cops used see here: https://github.com/bbatsov/rubocop/blob/master/config/enabled.yml
3
-
4
- Documentation:
5
- Enabled: false
6
-
7
- AccessorMethodName:
8
- Enabled: false
9
-
10
- TrivialAccessors:
11
- Enabled: false
12
-
13
- RedundantReturn:
14
- Enabled: false
15
-
16
- Metrics/ModuleLength:
17
- Enabled: false
18
-
19
- Metrics/ClassLength:
20
- Enabled: false
21
-
22
- Metrics/LineLength:
23
- Enabled: false
24
-
25
- Metrics/MethodLength:
26
- Enabled: false
27
-
28
- Style/RegexpLiteral:
29
- Enabled: false
30
-
31
- Style/HashSyntax:
32
- Enabled: false
33
-
34
- Metrics/CyclomaticComplexity:
35
- Enabled: false
36
-
37
- Layout/EmptyLines:
38
- Enabled: false
data/.ruby-version DELETED
@@ -1 +0,0 @@
1
- ruby-2.7.5
data/.simplecov DELETED
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'simplecov'
4
-
5
- SimpleCov.start do
6
- add_filter '/features/'
7
- add_filter '/spec/'
8
- merge_timeout 3600
9
- end
data/CODE_OF_CONDUCT.md DELETED
@@ -1,13 +0,0 @@
1
- # Contributor Code of Conduct
2
-
3
- As contributors and maintainers of this project, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.
4
-
5
- We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, or religion.
6
-
7
- Examples of unacceptable behavior by participants include the use of sexual language or imagery, derogatory comments or personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct.
8
-
9
- Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. Project maintainers who do not follow the Code of Conduct may be removed from the project team.
10
-
11
- Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an issue or contacting one or more of the project maintainers.
12
-
13
- This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.0.0, available at [http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/)
data/Gemfile DELETED
@@ -1,6 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in testcentricity_web.gemspec
4
- gemspec
5
-
6
- gem 'redcarpet', :groups => [:development, :test]
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 |