Skip to content

Testing and Quality Assurance (QA)

Testing and QA serve distinct functions.

QA

QA is inherently process-oriented. QA is not about focusing on the product; it’s about the process that will lead to the production of high-quality applications.

It’s ensuring every step of the SDLC is executed flawlessly.

QA is a preventative approach to preemptively eliminate defects through proper processes. QA is not the “testing team’s responsibility.” It’s everyone’s responsibility—it’s a collective effort. QA is just the champion of quality.

QC

Testing falls under the category of Quality Control, which is a product-centric approach.

At its core, QC is about identifying failures and rectifying defects. But it’s not just limited to testing, e.g. model checking, proof of correctness,simulation, and prototyping are also QC functions.

EXAM: Difference between Testing and QA (QC and QA)

Testing is a type of QC that takes a corrective approach, focusing on activities that enhance the quality of an application. QC methods include testing, as well as formal methods like model checking and proof of correctness, along with simulation and prototyping.

QAs need to understand the pressure that developers are under. We are there to help and support them. For example, if bugs and regressions increase, talk to the developers and ask them what’s happening and what could help. Don’t just throw a bunch of bugs over the fence as if developers aren’t doing their job properly.

Testing benefits are utilized in both QA and QC.

  • QC is for rectifying defects
  • QA offers insights into the design and development process.

QA:

  • Defining process standards
  • Project audits
  • Development procedures

Diagram

  1. Specification
  2. Quality Assurance (building in quality)
  3. Product
  4. Quality Control (“checking built-in quality”)