3.1QA101
WHAT IS QA?
QA stands for Quality Assurance.
In its purest form, it’s the systematic and trackable testing process applied to a project to validate the project goals, expectations, and deliverables. Projects are tested according to documented criteria and defects are logged with the necessary information and supporting material to enable developers, designers, or content managers to rectify bugs or issues.
In other words, quality assurance exists to find and fix problems, ensuring your digital product performs as expected and is as error-free as possible.
3.2TYPES OF QA
Quality Assurance encompasses a wide variety of sub-specialties and methods of testing.
Other vendors often list these services in a kind of 'word salad', making it difficult to distinguish between them; we aim to demystify the processes and benefits of QA.
Testing typically falls into the categories detailed in this section; however, every project is unique. We’re adept at identifying whether you need all the testing parameters listed, only a few, or even other more unusual quality assurance support.
- Functionality Testing
So you can be confident all features behave as expected and do not exhibit bugs, 'functionality' QA involves testing against the project’s functional and feature requirements.
- User Acceptance Testing
This process centres around devising and implementing appropriate testing to clarify whether a project meets the criteria defined in the Statement of Work and performs as designed.
- Compatibility Testing
Testing the build across multiple platforms is critical for ensuring consumer experience remains consistent irrespective of the platform used.
- Accessibility Testing
Good accessibility increases reach and boosts brand reputation. It includes testing third-party tools such as screen readers to ensure the build meets your defined accessibility criteria and functions as expected.
- Localisation Testing
This process checks that language translations are contextually correct and implemented without any visual or layout issues, and that any audio and/or video versioning is correctly integrated.
- User Testing
User testing can simulate end users’ behaviour to avoid potential problems, ensuring an intuitive experience for your audience. Experiential projects in particular are prone to usability issues.
- Security + Penetration Testing
Vital for protecting against vulnerabilities that could be maliciously exploited, security and penetration testing is designed to test the security of your build from every angle.
- Stress + Load Testing
You need digital products that perform well even under significant load. Stress and load testing interrogates your project to ensure it can handle heavy traffic and usage without degrading experience.
3.3DOES YOUR PROJECT NEED QA?
On Smaller Projects:
Engaging QA at the start is invaluable. It can vastly improve timeline planning, risk assessment, requirements scoping, deliverable sense-checking, etc.
Systematic testing can be useful ahead of key milestones and deliveries such as Alpha, Beta, Release Candidate, etc.
An intensive QA phase near the end of development can pave the way for a successful launch.
On Larger Projects:
QA can be run within project sprints as an integrated part of the process throughout development.
Systematic testing can be useful ahead of key milestones and deliveries such as Alpha, Beta, Code Freeze, etc.
If you are within warranty or maintenance phases post-delivery, QA coverage may be a contractual criterion or simply make practical sense.
3.4
Inputs
What does a QA team need from you? Depending on the project, we might need a range of materials or only the product being tested. In an ideal world, a QA team is provided with:
Approved designs.
Functional specifications and/or user stories.
Motion references.
Technical specifications.
Calls or workshop attendance to collaborate on specifications and requirements.
Outputs
What does a QA team provide for you?
Test Plans
A range of test suites and individual test cases that define what will be tested.
Test Coverage Reports showing exactly what tests passed and failed.
Bug Reports
Information detailing defects and how to recreate them, with screenshots and videos for context.
Logs and useful technical information for developers.
Any other information you'd specifically like! (projects vary greatly and some will have specific needs in terms of output.)
3.5HARDWARE CONSIDERATIONS
To accurately ascertain project status, you must understand how your project performs for the end user.
3.6
Benefits of QA
Helps assess the feasibility of your project deliverables and plans.
Protects your developers' and production team’s time and energy. (QA is a specialist role and shouldn’t be attempted by other teams on top of their existing roles.)
Reduces the burden on your creative leads for providing visual QA analysis.
Results in a more polished and robust end product.
Allows potential problems to be flagged and corrected early on.
Reduces expensive and disruptive post-live fixes.
Reduces the likelihood of angry or litigious clients.
Provides an impartial independent project assessment with empirical data that speaks for itself.
Boosts credibility by producing material that clients either expect or are reassured by.
Is invaluable for addressing queries on an ad-hoc basis.
Provides the intuitive and seamless experience your end user deserves.
Consequences of Neglecting QA
Unstructured, non-specialist testing leads to avoidable bugs.
Results in an unpolished or unintuitive product that damages your reputation and client relationships.
Creates a stressful 'crunch' period towards delivery day.
Results in risky emergency fixes needing to be carried out post-live.
Necessitates fire-fighting for your internal stakeholders and team if clients are dissatisfied.