Tests: reuse browser workers in BrowserStack tests#5428
Merged
timmywil merged 6 commits intojquery:mainfrom Mar 5, 2024
Merged
Tests: reuse browser workers in BrowserStack tests#5428timmywil merged 6 commits intojquery:mainfrom
timmywil merged 6 commits intojquery:mainfrom
Conversation
- add support for "latest" and "latest-1" in browser version filters - add support for specifying non-final browser versions, such as beta versions
2 tasks
mgol
reviewed
Mar 5, 2024
Member
mgol
left a comment
There was a problem hiding this comment.
A cursore review of this proved useful in the end. 😉
mgol
approved these changes
Mar 5, 2024
This file contains hidden or 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
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Summary
I suggest reviewing #5427 first. Any more changes made there that might apply to
mainI will add here as well.--no-isolatecommand flag to--isolate. Now that browser instances are shared, it made more sense to me to default to no isolation unless specified. This turned out to be cleaner because the only place we isolate is in browserstack.yml.Rather than spinning up a separate browser instance for each module, we send back the next test's URL when a module completes, if there is one. Then listeners.js sets
window.location. At first, I tried BrowserStack's change url API, but it was slower and incredibly error-prone.Sample BrowserStack run: https://github.com/timmywil/jquery/actions/runs/8123504592
Testing time has gone from 15-30min to 5min!
Checklist