Ask HN: How does everyone handle mobile browser testing?
So I've been working on a mobile game engine for Saito (https://apps.saito.network/arcade) and am running into testing issues.
Right now I'm having to manually run the applications on whatever cellphones and tablets we can find. Is there a better way to do this? Asking as I figure if anyone has solved this problem with an automatic testing suite or something similar it will be someone who reads HN....
Goal is to test mobile browsers to see which ones work and eliminate avoidable failures. Most of the problems we are flagging to date are javascript-implementation issues or things like auto-transaction "features" on foreign-language browsers that strip events from the page and/or stop them from running very quickly.
Any suggestions? Anyone have a startup that tackles this sort of problem?
22 comments
[ 4.6 ms ] story [ 65.7 ms ] threadIf you want to run the same tests against both mobile and desktop browsers, I recommend https://webdriver.io/, which uses Appium for mobile testing.
If you're interested in a Docker setup as a boilerplate to test against all major browsers (both mobile and desktop) with best practices for e.g. test video recordings, you might also wanna take a look at this repo of mine: https://github.com/blueimp/wdio
Multiple upvotes if I could.
For testing specific UI features, I would recommend looking into Selenium/Appium. Selenium for desktop browser testing, Appium for mobile testing (using Appium you can do mobile specific things like touch actions for instance).
For testing JavaScript, you can take a look at libraries like https://jasmine.github.io/.
Once you have a test script(s) ready, you can point it to cloud based testing services like BrowserStack (I work there).
We provide a large number of actual physical mobile devices to test on (no emulators), For complete list see: https://www.browserstack.com/list-of-browsers-and-platforms/...
Our service is completely free for open source projects !
If you want to go the manual way, you can also do that with BrowserStack, we provide the 'Live' product where you can control and test your website on actual mobile devices straight from your browser.
Last time when I used it it supported only chrome/firefox, but both mobile and desktop.
Please let me ask how is visual testing supported in other solutions like: selenium, appium, browserstack, webdriver.io, etc aka what do you use for crossbrowser visual testing?
As for finding devices there are a few cloud providers like xamarin or perfecto (never really worked with them in production) that gives you remote access to a lot of real devices and software versions
Having said that try to divert more testing towards lower levels- unit tests, testing on simulators, integration tests with a full phone and browser etc.
A good place to also ask is: https://testersio.slack.com
Testing just mobile web browsers is of course supported, but if you ever have the need you can test native game engines and get video and network performance statistics at the same time. Automated testing via Appium is natively supported, or you can bring your own framework.
We also have a device table with some common devices that we can use whenever needed. A recent Samsung Galaxy phone (not sure which model), iPhone SE, Kindle Fire and an iPad etc.