Sitting quietly on a desk a seemingly innocuous computer system nicknamed Cthulhu is revolutionizing the way Quality Assurance and mobile device testing is done. With a mass of wires sprouting from every port, resembling a Lovercraftian tentacled machine, this Android automation system allows for multiple device testing in real time.
For many mobile developers the challenge of device testing can be very difficult and time consuming. Android supports a wide variety of device hardware and often these tests must be run manually on each device by a Quality Assurance tester. The Cthulhu automation system can support as many devices as there are USB ports available. However, the devices must
often also be plugged in because they require more power than the USB ports can supply.
Creative Mobile had such a challenge in testing the User Interface for their flagship racing game Nitro Nation Online. Each device was required to install the game, run and log data, then output that data back to the testers. This could typically be considered an arduous task since it had to be performed manually.
The idea for an automated testing system has been proposed by Lead QA Eningeer Olga Yaltchik, who worked with QA Programmer Misha Beskin on a trial version that would run tests on devices one-by-one. The development team then came up with the idea to simultaneously do the same task on 5 (or more) devices with the help of automation bots. The first step is to make a build of the app with tests enabled, then the app is sent to the automation system, this is where Cthulhu then installs the app to all connected devices, starts the app and logs the test data, saving it to separate log files for each device.
These tests are performed only on a development or testing server and help to decrease the need for manual testing so that the QA team can focus on other tasks.
After many successful months of testing, the decision was made to release the Cthulhu project to the Open Source community, in order to to give back to the industry and to allow other developers to enjoy and improve the system for themselves.
The Cthulhu project can be found on Github https://github.com/creative-mobile/cthulhu