In competitive world of mobile games, gamers aren’t really shy nor they will turn their faces away from problems they confront when playing mobile games. Instead, they tend to provide pretty straight feedback on issues, games and sometimes even non-related things – because of frustration and emotions around the gaming experience. In addition, there are significant differences on how gamers take your product in different countries.
The fact is that feedback from gamers DO get easily in front of hundreds of millions of other gamers – and that can impact on your revenue generation. How can mobile game developers tackle these challenges and how do Mobile DevOps approach come into play? And mobile game testing is done? We’ll scratch the surface of that in this blog.
What Drives Mobile Game to Become Popular
Gaming on mobile devices (phones, tablets) has been improving at a far greater rate than any other technology that came before it. Just few years ago there was no powerful and capable-enough hardware (devices) that would provide great gaming experiences. Simply, there were no software that would run on those low-end mobile devices that could bring photorealistic graphics (console-quality) into your handheld, and there were no ecosystem to support, build and foster sort of gaming boom we experience today.
And as this trend has been evolving significantly during the past years, all sizes of game studies have entered in to this extremely competitive landscape with their gaming products.
As we’ve been discussing about the new Agile process that empowers game developers to build better and more robust mobile games, the quality metrics are something that are built when the actual game is developed. Therefore, the quality and building that up should be considered to be part of the actual development process, used tools, methods and frameworks.
The DevOps Process for Mobile Game Development and Testing
To build and test efficiently – and naturally let nothing to compromise those killer features – drive the mobile game up and forward, plus provides to offer a great user experience, testing in continuous manner is typically in the epicenter of the process. However, testing on real devices is just one thing that must be done right. Another important aspect is of how all that testing is operated and how results are measured during the development.
This is where Mobile DevOps can play a significant role ensuring testing environment, criteria and goals are meet. And as today’s mobile games are extending their life with new builds/releases/upgrades, testing all the new great features before it pushing it out for users is highly important. The process of testing looks somewhat like this:
While more traditional testing occurred close to the release, testing in mobile devops is done continuously, on daily-basis and it provides instant results on how issues are found, and how those can be fixed. The architecture for mobile game testing isn’t that different from regular mobile app testing but it includes bunch of real devices, combined with the continuous integration and used gaming development tools (dev tools, game engines etc.).
There is no room for manual testing in the mobile devops process as simply anything done manually will make the process much slower, less productive and badly inefficient. But that’s what we’re about to tackle here with full automation ready platform that can be used to automate all possible things affecting the productivity and bad overall performance by the developer organization.
The solution for faster development-testing-deployment iterations and instant error reporting results as significantly higher quality with a mobile game. The better quality comes from the test automation, efficient use of continuous integration, real devices testing, and with the use of advanced testing methods.
Will Mobile Monitoring Help Building Better Quality Games?
Mobile gaming has been booming for years and the same phenomena is going on for online gambling as well. During this time new ways to monitor mobile games on real locations, using real networks have showed up. However, doing that with native mobile game on real environment hasn’t been existed. The thing where mobile monitoring can make the difference is that it can instantly show if users are not being able to played with it, and if this has a relation on why they leave those games behind.
With synthetic mobile monitoring not only performance aspects of products can be measured but also the health level of the system if more bandwidth needs to be added in the back-end implementation, more hardware or anything else to making the gameplay smoother for end-users.
How DevOps Will Help Building Better Mobile Games
Agile organizations are so used to having daily stand-ups and doing everything in agile way. That’s the process of how everyone is kept on the same page. In addition to this, Mobile DevOps strives to involve more specifications and documents where practices, checkups and operational instructions are laid out and everyone can follow the process.
Sure, again: game ratings, performance/slickness of that game, and compatibility across all possible gaming devices matter and have a direct impact on installations: the better ratings, the better position in search. But those are the goals that both agile and devops adoption can bring to the table when used properly as part of the development, testing and deployment process.
“Time-to-market can be improved with continuous integration, real mobile devices, the right test automation frameworks, AND the right mobile devops culture wrapped around it”
The sooner the mobile game gets tested, made robust and published for hundreds of millions of users, the sooner the revenue starts pouring in. Any mobile games’ time-to-market counts not only against competition but also when the revenue starts rolling in. Simply, time-to-market can be improved with continuous integration, real mobile devices, right test automation frameworks, AND the right mobile devops culture wrapped around it!
And it’s not all about competition. Some games are taking gamers by the storm way after their competition (other games) where published. Generally, the rule of thumb with mobile games is that “be the first, skim the cream” and that’s where mobile devops can help to get that mobile game published.
There are lots of variations in end-user platforms (ie. devices) that mobile games should support (for sake of revenue generation) and ever increasing complexity in games that need to be tested on those end user devices in every release. If you come up with a bad release, you’ll drive big chunk of gamers out – and that has a direct impact on your revenue.
With larger game publishers it’s very common to build large internal game testing labs with full test automation, great devops practices around it – or alternatively – outsource all of that the expert. However, that expert still should be one that goes the mobile devops path, using test automation, real devices and making efficient process that cumulates as a higher quality game.
The Most Critical Mobile DevOps Tools for Mobile Games
Continuous Integration and Deployment
The use of automation is already in the core of how developers build their software. Companies rely on continuous integration tools (like Jenkins) that bring easiness, clarity and result-driven execution for all steps: development, testing and deployment.
In fact, continuous integration provides a workflow to help managing code and its regressions, and then enabling efficient testing of those builds. With this sort of Agile approach, continuous testing can also happen every time code changes in repository.
Game developer organizations should focus their efforts on building new features, versions, enhancements, and take care of bug fixing, while test automation produces results every day, and the entire test setup is managed by the devops. For instance, building a new version of app can take a place every day and then that application gets tested – before the next release takes a place. It provides efficient way to improve the overall game quality, find out and rub out the bugs instantly and not to drag those with the game, release after release.
Use of Real Mobile Devices with Test Automation
Despite of some believes mobile games can be tested with various test automation frameworks produced as open source. These frameworks provide a way to implement any sort of test scenarios, test scripts and cases around mobile games. When building test scripts for a mobile game it’s a no-brainer that developer organization strives to use as authentic environment for testing as possible – and this means the use of real mobile devices.
After the game (in form of APK or IPA) gets built by the build system, it can be automatically send for its first test (the smoke test) to see how well it run on devices and is it even compatible. Each regression can be tested (regression testing) with the existing test scripts for certain specific function. For instance, if the mobile game relies on back-end services, this connection can be automated with sophisticated test scripts after each build.
In addition, many other aspects can be also automated: localization (testing different languages), different types of performance tests (load, spike, stress and others), connectivity and hermetic testing (isolation of game from network, other services etc.).
Now, are you using devops approach/do you have a devops culture when you build your mobile games? Let us know in the comment section below!