By Shinaaz Osman, Senior Quality Assurance Consultant
While software testing is an important part of the Software Development Lifecycle (SDLC), and a competency we believe needs to form part of solution delivery from the start of a project, there remains common misconceptions about the role, skills and importance of software testing.
Shinaaz Osman, Senior Quality Assurance Consultant at Saratoga, tackles a few of these misconceptions and highlights the importance of professional software testing services.
‘No special competencies are required for software testers’
Some organisations still tend to recruit individuals for testing roles who do not have a formal background or prior software testing experience, or the testing of a solution is delegated to developers on the bench.
While either of these options might provide basic testing functions, organisations ultimately lose out on the specialised skills and value which dedicated professionals with an in-depth knowledge of quality assurance and software testing bring to a project.
Ultimately, software testing is a specialised process key to the success of any project or solution and this function won’t be adequately performed by a professional unskilled or inexperienced in software testing.
‘It’s possible to test the system completely’
Testing a system completely is not possible because there are too many combinations of data and user inputs, programme paths, or hardware and software platforms on which the product or system runs to allow the possibility of absolute complete testing.
While it is possible for all paths to be tested by the team, the occurrence of a 100% complete testing is never possible. For example, there might be some scenarios that are never executed by the test team during the software development life cycle and these may only be executed once the project has been deployed.
Even if testing a system entirely could take place, it would be extremely expensive and unrealistic for organisations in terms of effort and budget.
‘You can have ‘zero defect’ or bug-free software’
A general challenge in software testing is that there may not be sufficient time and money to test every aspect of the solution. The goal is therefore to test the system as thoroughly as possible within the budget and time constraints present.
This is another reason software testers should be involved in the SDLC from the start of the project, as they can then better determine and advise on the priorities and scale of testing required for the project to be successfully delivered.
‘Testers are solely responsible for quality of product’ It’s a very common misconception that only software testers or the testing team is responsible for product quality. While a testers’ responsibilities does include identifying bugs and issues to the stakeholders, it is then often their decision whether the fix will be made or if the solution will be released. The overall quality of the solution is impacted throughout the SDLC by various constraints, the development team and business stakeholders – making the role of software testers key in the entire solution delivery of a project.