Calabash is a framework for automating functional testing on mobile application. Basically its a driver that manipulates the work of application on a mobile device or on a simulator. It supports only Ruby programming language and is usually used together with Cucumber which grants testing infrastructure (test launching, parsing tests, reports generation).
Architecturally it contains of two parts: client and server sides. Server side is an HTTP-server that is built into the application which is going to be tested and receives requests for certain actions that need to be executed in the app. Client side is an API for interaction with server written in Ruby language.
In addition to functional testing, Calabash allows creation of cross-device, migration and performance tests as well as testing by screenshots.Cross-device tests are implemented using DEVICE_TARGET parameter with UDID of needed simulator. In addition to that, Cucumber has a list of tags that define what scenarios will be ran so you can run specific scenarios on specific devices.Migration testing happens the following way: Cucumber and Calabash allow installation of a certain build, so for example a live build is being installed using files from corresponding repository. Then, a needed sandbox in installed on top of it and at the end a set of verifications are executed (it can be continuation of the same login session, the amount of messages, chats, point and so on).Testing by screenshots is implemented via API based on ImageMagic library and allows taking screenshots and comparing them to a reference image. It has a great potential and certainly will improve in future.Performance tests contain of Performance.feature files that have sets of scenarios execution time of which we want to measure. On the first stage all scenarios are ran and then log collection happens, metric search, averaging of results and creation of report.
You are developing a mobile app and need QA or you already have one and need maintenance? Then you are in a right place, because DeviQA`s automation testing teams have years of experience with mobile automation testing, thousands of written scenarios and dozens of happy clients. We can quickly and effectively cover an app of any size and difficulty with automated tests and as in icing on a cake we have real devices to test on!
COPYRIGHT DEVIQA SOLUTIONS 2018. ALL RIGHTS RESERVED.