Are you looking to get started in testing for the gaming industry? Are you a more seasoned quality professional looking to level up your skills? Are you curious to learn more about what testing video games is really like? If you said yes to any the above, then the QA 101 series is for you! We aim to teach the basics of quality assurance by going back to the fundamentals. Each article will contain essential information to explain everything you need to know!
There are many different names for problems found in video games. Bugs, glitches, issues, defects, crashes, hangs. Some will be regularly used by players and some only by a development team internally. In this article, we’ll go over a little bit of QA theory to understand the foundation of what makes a bug and how they’re addressed within the development of a game.
A bug is generally made up of 3 parts: An error, a defect and a failure.
An error is a human mistake during coding and is what causes a bug. It could have incorrect or missing handling, typos in code, or logic implementation problems. A programmer could misunderstand the design documentation and create code that functions correctly but doesn’t do what the design asks for. The reasons that an error exist are endless. It could be anything from coding before that first coffee on a Monday morning to working through extremely complex and dependant systems. An error is what causes a defect in the first place. You may also hear this called the “root cause” of a bug. A good first line of defence to decrease errors is to have developers proofread their own work. Getting code reviews from other programmers is also a commonplace strategy to reduce the number of errors. Generally speaking though, the QA process is set up specifically to catch these problems.
A defect is the bug itself. Taking the erroneous code and discovering that it makes the game not work as intended. A tester’s main role is to observe the behaviour in the game and make reports for when it is not running as expected. With any bugs that are put into the tracking system, a developer can go back and debug the code to look for the root cause of the defect, and hopefully make a fix!
A failure is the effect of the defect. Yup, this is what most people will be talking about when they call something a bug or glitch. It could be anything from a menu item not being selectable to the game completely crashing when you talk to a specific NPC. A game crash or freeze is extremely severe and will attract a high priority for getting fixed, whereas a much less problematic issue, such as a typo in dialogue, will be low priority, and depending on how much time there is until game release, may not be fixed at all!
If these definitions all sound extremely similar to you, it’s because they are! The easiest way to differentiate between them is by considering who discovers the issue. If a developer is the first to find it, it’s an error. If the tester finds the developer’s error, it’s a defect. And then a defect is often not considered a failure unless it is experienced by a player.