Now that we have unit tested as well as end-to-end tested our app, we will deploy the app on to an actual device and test it.
To start testing on actual devices, we need to borrow or purchase them, which may not seem practical for an one-off app. That is where the concept of device farms comes into the picture. Device farms are collections of various devices that can be accessed through a web interface. These devices can be accessed and tested over the web in a similar way how one would do testing on an actual device.
There are many providers out there who offer pay-as-you-go device farms. After a lot of hits and misses with many device farms, I kind of grew a liking towards AWS Device Farm. It is simple, easy to use, and quite verbose with the error logging, screenshots, and videos. The latter really helps you in identifying an issue that your end user or a bug crash reporter reported on a specific...