So, you’re interested in learning more about QA huh? This is the first post in a series of posts about the Quality Assurance process. Basically, what we do to make sure the game is playable when we finally launch it!
QA is the process of testing a game or application to make sure when it’s released it has as few bugs as possible.
This first post will be about manual QA. Future posts will get into automated QA, test cases, and more. I know some folks here have stated interest in coding and others may have made games before, or at least are interested in it, so we can get more technical if you're interested in that!
What is manual QA?
This is manually playing a game and running into bugs or issues yourself. Can you fall off any platforms into an endless void? When multiple players join a room, do they all look the same and do they all see the same things? When you buy an item, does it appear correctly in your inventory? A game should run as you expect it to, QA testing is making sure that's really the case.
Example of something terrifying we ran into recently, The Face-Chin Man:
It can be exhausting sometimes. I remember when I was QA testing for the Spirit Animals game way back when, I spent hours running into invisible walls trying to find areas where I could break through all because I found one instance once where I ended up in a void.
Manual QA not only helps to find bugs, but also areas where the game’s design or UI (user interface) isn’t working as you expected. This is an area where automatic QA doesn’t really help. A QA tester might be playing the game and realize they always accidentally click on their character while trying to run, which brings up the “emotes” menu. Maybe the “Quit” button is placed really close to the “Save” button so you sometimes accidentally quit the game when you’re trying to save. These are not a “bugs” per se, but they are annoying and negatively affect the player's experience. A QA tester might play a game where the goal is to pick up a dog and carry it to a doghouse. They discover they can still dance emote while holding them which makes everything look nuts...
What is even happening here my dudes:
One of the most important mindsets to have while manual QA testing is a desire to break games. It can be pretty fun thinking of all the crazy things players might do, though it’s impossible to think of everything. I worked on a game once where we tested for months and months, and in the first few days of launch someone had already discovered a small area of one specific map where their character could jump up and stand on an invisible platform in the corner.
We have to test on all the different browsers and mobile devices we expect our players to use. This is why when you submit a bug report to us, it’s really helpful if you tell us whether you’re playing on web or mobile, the browser (Firefox, Chrome, etc) or OS (Operating System: like Windows, Mac, Apple, Android) of your device, and even what version of iOS or Android it is. It helps us find the bug if we know that something is a global issue and affecting everyone, or affecting only certain users on a specific browser.
When you find a bug what do you do with it?
Well, you need to inform the developers since they’re the ones who can actually fix it! This means you have to “open a ticket” on some sort of bug tracking application. A “ticket” is simply a description of the bug, how game-breaking it is, what system/device you’re using, and steps to reproduce it. Sometimes it includes more information, like images, videos, what version of the game it affected, etc. The goal of a ticket is to make it as easy as possible for a developer to figure out the exact cause of a bug so we include as much information as possible.
Here’s an example ticket:
Reproducing a bug is often the most difficult part of QA testing. Figuring out the exact steps needed to reproduce it is a lot trickier than you’d think. It can feel like a putting the pieces of a puzzle together which is cool - when you successfully figure it out. When you can’t figure it out it’s one of the most frustrating things ever. For example, maybe a bug only happens if you have a certain item equipped or have just completed a specific action, like talking to an NPC.
I hope this has given you a nice overview of the manual QA process! Stay tuned for future installments where we get more in-depth and technical about automated QA (and share more examples of the wonky bugs we’ve found in our game.) Plus, very soon I'll have a big announcement for you all that will answer many of your questions about what we're working on. Woo!
-Becky B & Queen Andrea (QA)