Browser Busters on any Device

maandag 29 mei 2023

Last month, our Low-Code testing unit at Valori went to the Dutch island of Texel to have a weekend full of fun. Next to a Mario Kart tournament, a Fall Guys marathon and a great BBQ prepared by Maarten Metselaar and Ronald van Liempdt, there was also some time reserved for “serious” stuff during our quarterly hackathon. This time, I decided to dive into the possibility to integrate JOSF, Valori’s Low-Code testing tool, with BrowserStack.


Why BrowserStack (or similar testing platforms)?

When testing OutSystems web apps or progressive web apps (PWA’s), it might be a requirement to validate the app behavior on multiple devices with different sets of browsers. This can be quite a hassle as most of the time you do not have all browser versions available on your machine, nor you have the necessary devices available. Testing platforms like BrowserStack and SauceLabs offer a solution for this with the ability to test websites and mobile applications across on-demand browsers, operating systems and real mobile devices.


Configuration

By default, JOSF already has four browser types preconfigured for your installation: Chrome, Chrome (Headless), Firefox and Edge. JOSF’s BrowserStack- and SauceLabs integration allows you to extend this with all possible devices and browser versions BrowserStack and Saucelabs support. This allows you to run tests on any browser or device. You can read everything about how to set this up at the following page: https://www.josf.nl/josf-docs/add-browser-configuration/


Results

For me it turned out to be quite easy to set things up. BrowserStack was fully capable to run JOSF tests on any device or browser instance and automatically created a video of the test run. Here it’s nice to see the Macbook or Android interface for example, as proof.

This integration is a nice addition for testing the OutSystems PWA’s Mohammed Mirza talked about earlier in his blogpost, as it’ll allow us to test on physical devices, but also have a wider set of devices available than the built-in OutSystems emulator has.

Here we shared two of our executed tests, one which was executed on an iPhone 14 using iOS 16.2. Our second test was executed on Windows 11 with Edge version 112.

Iphone 14

Iphone 14

Windows 11 Edge

Edge

Testing multiple setups with 1 test case

The biggest benefit is that you only need to create your test case once in JOSF, after which you can run this test on any device or browser. After the initial setup, it becomes super easy to switch between browser versions or devices. You can easily switch between browsers by just selecting them in JOSF Browser Settings. Once you’ve changed these settings, your JOSF testcases will run on the selected browser (through BrowserStack) and you do not need to change anything in your testcase itself.

Top picks

We’ve shared our top 8 browser configuration settings on this page: https://www.josf.nl/josf-docs/top-8-browser-configuration-settings-for-browserstack/. We chose to put the newest Apple and Samsung devices as well as some of the older models. For browsers, we chose the newest Safari version in Macbook, and Edge for Windows 11.

What’s Next?

It is on our backlog to investigate if we can possibly test native apps, through JOSF, using BrowserStack (or SauceLabs) as well. Currently we are only able to test web apps or PWA’s as we are not yet able to automatically install- and test native apps through the platform. Certainly with the increasing demand for testing mobile apps, this would be a great new feature for the JOSF team.

In the meantime, you can already start with our BrowserStack integration straight away as it is part of our free version! Visit www.JOSF.nl, download the latest JOSF version and start building your tests!

PS: thanks to Bé van Gerrevink for completing that final Fall Guys run on Texel, at Sunday 00:00 sharp 😉.