-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
jimfuqian/BB2-3239-fix-CI-check-selenium-tests #1271
Merged
JFU-NAVA-PBC
merged 73 commits into
master
from
jimfuqian/BB2-3239-fix-CI-check-selenium-tests
Dec 16, 2024
Merged
jimfuqian/BB2-3239-fix-CI-check-selenium-tests #1271
JFU-NAVA-PBC
merged 73 commits into
master
from
jimfuqian/BB2-3239-fix-CI-check-selenium-tests
Dec 16, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…fix-CI-check-selenium-tests
…fix-CI-check-selenium-tests
loganbertram
approved these changes
Dec 16, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Checked in CI and with the local docker-compose. Everything works and better than ever. Looking good!
JFU-NAVA-PBC
deleted the
jimfuqian/BB2-3239-fix-CI-check-selenium-tests
branch
December 16, 2024 23:58
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
JIRA Ticket:
BB2-3239
What Does This PR Do?
Fix the CI check:
Firstly, run selenium tests, which is errored out due to ENV var USE_NEW_PERM_SCREEN is not set.
After satisfied ENV var USE_NEW_PERM_SCREEN, hitting other issues on CI pipeline:
Issue 1: MSLSX is set to true, but the dev-local mock login on 8080 not started as part of "Start bb2 server " step (used to be started), this is causing selenium tests timeout at login step, what happened is that all SLSX endpoints are pointing to SLSX test endpoints which is not consistent with MSLSX=true, so expecting mock login web page widgets on a real medicare login page will timeout.
So change all medicare login url and SLSX URLs to the mock ones
(MSLSX is recommended to be used at CI node because it is faster, safer, and BB2 tests won't be affected by some times intermittent issues at medicare login (test) e.g. MFA is on, not accessible at certain time etc. and SLSX services (test)
Issue 2: chromedriver version and chrome browser version is not compatible which causing webdriver init failure, fixed CI docker image (registered at AWS ECR) with 131 chromedriver and chrome, needs maintain it this way going forward.
Miscellaneous improve on local docker and compose.
What Should Reviewers Watch For?
Review the piepline files and related Dockerfiles and check the image published to AWS ECR.
Review the changes in selenium_generic.py for webdriver initialization: remote driver and local driver
Check the CBC CI check task "Z Check Git Hub PRs" which will replace the current "Check Git Hub PRs"
Run the task "Z Check Git Hub PRs" either by trigger it through a PR push and/or manually start one with "Selenium Test" checked.
If you're reviewing this PR, please check for these things in particular:
Validation
Go to BB2 Jenkins: https://ci.backends.cms.gov/non-oc/job/Blue%20Button/
Go to "Z CHECK - GitHub PRs", run build with selenium tests checkbox checked:
it should pass for both with/without "Selenium Tests" checked as shown:
Optionally check the local docker compose tasks work as expected:
Following readme to setup ENV vars needed from AWS parameter store and run the following commands (scripts) to pass all sorts of selenium based tests:
Syntax: run_selenium_tests_remote.sh [-h|d|p] [SBX|PROD|TEST|]
Options:
-h Print this Help.
-p Test for newer permissions screen. Defaults to older screen.
-g Selenium grid used.
-t Show test case actions on std out.
Examples:
run_selenium_tests_remote.sh -p https://sandbox.bluebutton.cms.gov/ (or SBX)
run_selenium_tests_remote.sh https://api.bluebutton.cms.gov/ (or PROD)
run_selenium_tests_remote.sh -p https://test.bluebutton.cms.gov/ (or TEST)
default to SBX (https://sandbox.bluebutton.cms.gov/)
`
Use one of the following command line options for the type of test to run:
Options:
-h Print this Help.
-p Use new permissions screen (defaults to old style screen).
-g Selenium grid used - hub on port 4444.
-t Show test case actions on std out.`
What Security Implications Does This PR Have?
Please indicate if this PR does any of the following:
security engineer's approval.
Any Migrations?
etc)