Partial support for BitBar mobile browsers #786
Merged
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.
Goal
Adds partial support for testing on BitBar mobile browsers. It works for basic test scenarios locally, but isn't yet working on CI or for the whole set of bugsnag-js tests.
Design
There may be further changes needed to run all of the tests in bugsnag-js and bugsnag-js-performance. There are also some outside points around documentation and validation of inputs - captured in PLAT-14618.
BitBar differs to BrowerStack in that it uses Appium with mobile browsers instead of Selenium. Until now, Maze Runner had a fairly simple view of the world - Appium only meant apps and Selenium only meant browsers. This change clouds that and has unfortunately lead to various additional guards being added throughout the code. Starting from scratch, we would most likely have created a better hierarchy of classes and separation of concerns.
Documentation
To follow in PLAT-14618.
Tests
CI verifies that the existing Appium features are not broken by the change. I can also run the scenario in test/e2/browser locally with a mobile browser, but not yet on CI.