Ensuring your software product is fit for purpose and getting it right the first time
Functional testing, which covers validation & verification is the basic and most common form of testing conducted on software products. This testing ensures the product is fit for the purpose, i.e. does what is supposed to do. But, most importantly, products are also validated to ensure they do not do what they are not expected to do. We call this negative testing and it is equally important as a recent incident in US proved when a court management software wrongly recorded road traffic defendants as sex offenders.
We believe that software testing is like fishing and you need different types and sizes of nets/hooks for different sizes of fish. You wouldn’t use the same net to catch herring and tuna fish. That is why we place emphasis on the importance of unit, component, functional, system and end to end testing. Each of these test phases catch different types of defects and together they create a comprehensive gates for ensuring quality.
Here at Awesome QA, we believe that the quality of functional testing depends on several factors:
- the clarity of the requirements/acceptance criteria
- tester’s knowledge of the product and business domain
- tester’s technical knowledge of the system under test
- tester’s creativity and ability to think out of the box
- leadership direction and support the tester is receiving
- fixing defects, even the low priority ones as they could be preventing team from finding bigger problems
- their communication skills to ensure they can articulate issues and impedance to the team/management
- passion for quality
- attention to details
As can be seen, the result of functional testing depends a lot on the test professional themselves and that is why here at Awesome QA we put a lot of focus on who we are recruiting.