Closed occupant23 closed 4 months ago
Property name | Type | Usage | BrowserStack |
---|---|---|---|
browserName | String | list of browsers see [6] | supported (alt: browser) [1] |
deviceName | String | list of devices see [6] | renamed: "device" [1] |
deviceOrientation | String | portrait, landscape (default) | supported [2] |
idleTimeout | int | default: 900s | supported [3] |
maxDuration | - | fix value | not supported: 2h fix [4] |
platformName | String | supported, but better to translate os, os_version | renamed: "platform", (alt: os) [1] |
screenResolution | String | width and height separated by x e.g. "1200x900" | renamed: "resolution" [3] [5] |
seleniumVersion | String | list of versions see [3] | supported [3] |
version | String | browser_version is preferred | supported [1] |
acceptInsecureCertificates | Boolean | true: ignores invalid certificates [3] | renamed: "acceptSslCerts" [3] |
sources to refer to: [1] https://www.browserstack.com/docs/automate/selenium/select-browsers-and-devices [2] https://www.browserstack.com/docs/automate/selenium/change-device-orientation [3] https://www.browserstack.com/automate/capabilities?tag=selenium-4 [4] https://www.browserstack.com/docs/app-automate/xcuitest/timeouts#session-limit-reached [5] https://www.browserstack.com/docs/automate/selenium/change-screen-resolution [6] https://www.browserstack.com/list-of-browsers-and-platforms/automate
I opened a free BrowserStack account, implemented and tested the changes. Please review.
Code is merged into development.
@rkl-xc : Please extend the documentation (dev branch) with another column containing the BrowserStack specific information.
@oomelianchuk Please test this feature. Contact me for credentials.
The feature works as expected. I was able to configure test to run on iPhone12, Samsung Galaxy S20 and Chrome latest version on Windows 10 with following configurations:
browserprofile.iPhone12.name = iPhone12
browserprofile.iPhone12.browserName = iphone12
browserprofile.iPhone12.platformName = 14
browserprofile.iPhone12.deviceName = iPhone 12
browserprofile.iPhone12.deviceOrientation = portrait
browserprofile.iPhone12.testEnvironment = browserstack
browserprofile.SamsungGalaxyS20.name = Samsung Galaxy S20
browserprofile.SamsungGalaxyS20.platformName = 10.0
browserprofile.SamsungGalaxyS20.deviceName = Samsung Galaxy S20
browserprofile.SamsungGalaxyS20.deviceOrientation = portrait
browserprofile.SamsungGalaxyS20.testEnvironment = browserstack
browserprofile.Windows10Chrome_latest.name = Windows 10 Chrome latest
browserprofile.Windows10Chrome_latest.browserName = Chrome
browserprofile.Windows10Chrome_latest.browserVersion = latest
browserprofile.Windows10Chrome_latest.platformName = Windows
browserprofile.Windows10Chrome_latest.osVersion = 10
browserprofile.Windows10Chrome_latest.seleniumVersion = 3.14.0
browserprofile.Windows10Chrome_latest.testEnvironment = browserstack
BTW, I haven't found Neodymium documentation update for this feature, was I just looking at the wrong place?
Documentation extended
Already in master...closing ticket
We already documented the differences between SauceLabs and TestingBot within the documentation: https://github.com/Xceptance/neodymium-library/wiki/Test-Environments#browser-specific-test-environment-configuration
We would need a list that covers if the already supported configurations/capabilities are available/supported. Furthermore if the naming is different to SauceLabs a list of differences would be nice, so that the adjustment will be faster.
You can find the BrowserStack documentation here: https://www.browserstack.com/docs/automate/selenium/getting-started/java/junit Under the "WRITING YOUR TESTS" section within the sidebar you can find the different capabilities. I saw there is also a capabilities generator on the site, maybe this can also help.