Within an application development team there is a role known as the Quality Assurance Agent. Often abbreviated simple as a QA agent. The summarized role of a QA agent is to asses the quality of the application, report on issues and assist with debugging of in app problems.
There is of course a lot more to the role - so let’s dive in and explore it a little.
The role of a release tester is validate the health and stability of a general release before it is shipped out to the world. this role requires a lot of repetitive testing and requires the QA agent to have a decent amount of experience within the game to tell when things are not behaving according to design. Release testers generally follow a defined release testing plan that outlines all of the expected behavior that should be observed within the game.
The role of a feature tester is to validate that a feature is implemented according to design and bug free. Generally these features will be brand new and require a very in depth analysis of how the feature works. Often many bugs may be uncovered during this process and the engineers and product designers will work together to determine what should be changed as a result of the surfaced issue. Feature testers may or may not have a test plan to follow but often do have at least a feature document or feature spec to use as a guideline for how the feature should work and interact.
Alpha testers are similar to feature testing, but they are often more embedded in a closer manner to the developers. They often help with testing a feature as it is being developed and assist in discovering issues early on. The whole point of an alpha tester is to discover the majority of issues within a feature before it gets added to main repository of code.
The purpose of integration testing is to ensure that once a feature has been added, it does not negatively influence or change the rest of the game. For example does the addition of a feature change rulesets across the game? Does it allow for exploits within the games economy or interactions or so forth. Generally integration testers have a defined document that they can work off of to validate whether or not a feature has passed basic integration testing with the rest of the application.
Destructive testing is designed to discover the boundaries of a given app or game. In this case QA agents do not have a defined test plan or feature document to go off of. Rather they try to simulate being a user and try to find ways to break or take advantage of an application. For example if an application allows you to set a username, a QA agent doing destructive testing may try to see what happens when they enter a really long user name of say 500 characters. This may creak havoc in your apps UI.
Depending on the size of your development team and maturity of your app some of the roles above may or may not exist. You may have testers that perform more then one of the above roles. Each role is important for different reasons and the most valuable QA agents are those who are able to do different types of testing.