Games these days have increasingly complex interaction schemes. Great for the gamer! But this also leads to many quality related issues in order to optimize the gamer’s experience. Some of the issues that are particular to game testing include:
- Usability: Probably one of the most important aspects is how to attract and keep users engaged. Usability in gaming goes beyond the interface into engagement and the strategies to keep gamers coming back. Besides usability engagement properties, evaluating and testing for the learnability of the game at the right level for the right level of user is critical.
- Performance: These days, many games integrate several multimedia files (pictures, music and videos). Many games support thousands or even millions of multiple simultaneous users, so determining accurate performance profiles for both network and server are very important.Carefully thinking through performance testing profiles can involve more than just the end user’s hardware and software, but an understanding of the users and their typical profile and usage patterns.
- Test coverage: A single simple game may contain 1000 steps or scenarios and one screen could contain 100 points. It seems impossible to ensure full test coverage, so allocating resources and time must be done using a matrix approach for the most popular scenarios. Automation can provide some relief but mostly for mature games.
- Security: For network capable, multi-user games, security is paramount. Games with virtual money, role escalation (going up a level in the game), prizes, selling trinkets (sword, shields), etc. are typical game related scenarios that need to be specifically tested.
- Compatibility: As mentioned earlier, many games make heavy use of multimedia files especially for web-based browser platform games. In this case, the platform matrix needs to include most of the popular browsers such as IE, Chrome, Firefox, and Safari in addition to the most recent OS versions. Another important compatibility issue is hardware. Most PC-based 3D games usually need to run on different video card platforms, i.e. ATI and Nvidia. For mobile devices, some games usually have different versions for different types of device as Angry Birds has an IOS version and an Android version. So this can further increase the dimensions of the compatibility matrix.
Generally speaking, playing games is for relaxation and entertainment, but testing games can behuge task requiring knowledge beyond typical testing skills.