Testing games as native apps on phones / mobile devices / tablets makes testing of regular apps, or websites appear like a piece of cake. Testing games becomes even more challenging when you think about automating the same.

I got an opportunity to build Functional Test Automation for a suite of games – and what an exciting time it turned out to be!

These games are built either using Cocos2d-x, or Unity (cross platform game engines for mobile games, apps and other cross platform interactive GUI and are known for their speed, stability, and easy of use).

The key challenges I encountered were:

  • Millions on users, playing the games on a huge variety of devices
  • Limited unit testing
  • API testing & Functional Testing done in isolation (mini-waterfall approach)
  • Usage of Cocos2d-x & Unity for game rendering – which cannot be automated via Appium
  • Limited Functional Automation (for native apps)

Come to this session to understand how I overcame the challenges and helped build:

  • A better way of working (you can call it ‘Agile’)
  • Break down the walls by fostering a mindset of “build quality-in, as opposed to test for quality”
  • Setup vision of CI-CD – and how to setup CI pipelines to enable end-2-end visibility
  • Build a new functional automation framework using java/testing/appium-test-distribution/reportportal/jenkins with focus on – specify test intent once and run on all supported channels (ex: Andriod, iOS, …)
  • Build a solution for Cocos2d-x layer automation
  • Ability to use same framework for multiple games
 
 

Outline/Structure of the Case Study

  • Challenges of testing and automating games
  • Experiments done, options explored
  • Sharing the custom solution to automate Cocos2d-x

Learning Outcome

  • Automation strategy for games
  • Test Automation Framework architecture to support multiple products, and multiple channels per product
  • Solution for automating Cocos2d-x layer
  • CI-CD setup, with multi-branch pipeline
  • Upskilling team members on this approach (coding practices, PRs, design patterns, etc.)

Target Audience

QAs, Automation Engineers, Devs

schedule Submitted 11 months ago

Public Feedback

comment Suggest improvements to the Speaker
  • Aino Corry
    By Aino Corry  ~  9 months ago
    reply Reply

    Hi Anand

    As I already said I liked your other talk better :-)

  • Naresh Jain
    By Naresh Jain  ~  11 months ago
    reply Reply

    Hi Anand,

    Thanks for sharing this case-study. Can you please help me understand why you considered this under the Chaos Engineering theme as compared to DevEx and DevOps theme?

    • Anand Bagmar
      By Anand Bagmar  ~  10 months ago
      reply Reply

      Hi Naresh, I was actually unsure and in dual minds about where this topic would fit better. If you think the devops theme is more appropriate, I will update it now.