Here’s what we think is a good analogy. Can an expert omelet maker cook poached eggs? Technically, poached eggs are not omelets. The question is, can he make it? It depends on the skills of the omelet expert. So, the answer lies right there. A Quality Assurance Tester might be able to perform unit testing. But should he do it? At H2K Infosys, we offer a comprehensive 100+ hours QA testing online course where the trainee gains expertise on various SDLC, STLC methodologies, QA techniques, manual testing, automation testing, etc. It is needless to say, a qualified QA tester can look at various career options, such as software testers, business analysts, QA, QA managers, and many more.
What is unit testing?
Unit testing is ideally performed by isolating a set or unit of code and validate it for expected results. The unit could be a module, function, method, or procedure. It is essentially a part of the coding phase, which is the first level of testing in the Software Development Life Cycle (SDLC).
Who should perform unit testing?
The rule of thumb is that the software developer should perform unit testing at every phase of the development process to check if the written code meets the required results.
Why unit testing?
Ideally, the Unit Testing should be implemented before Integration Testing, which in turn is followed by System Testing before the final Acceptance Testing takes place. The idea behind it is to catch the bugs in the initial phase of development as it saves time, effort, and money if the unit testing is done well. Postponing the unit testing so that the bugs will be caught in the next level is the average thought process of an immature developer. However, often it leads to disappointments in the end.
How to perform unit testing?
Unit Testing can be performed both
- Manually
- Automated
Though both the testing types are common, the general inclination is towards the automated tests as code re-use happens here.
Unit testing advantages:
- The developers can gain a better understanding of the unit API as they understand the functionality of each unit better.
- Regressions testing where the test cases are written for units such that whenever there is a change in a particular unit that is faulty can easily be fixed.
- As unit testing can be performed on a modular basis, each unit testing is independent of the other.
What happens in reality?
As opposed to the standard process, unit testing or the WhiteBox testing technique is usually skipped by the developer due to the time crunch or incumbent pressure. However, this is considered to be a blunder in the IT world. Why? The developers often fall into the trap thinking that their code is strong enough without bugs and they can leave out unit testing.
But more often than not this leads them to a vicious cycle where the less testing in the coding level gets them stuck in the next, Integration level testing. This translates to more pressure and severe time crunch. The bugs which could have been easily fixed will take much longer to trace in the Integration level.
So, the answer is in the practical world, the job of unit testing often falls in the lap of the QA testers.
For full details on Quality Assurance online training, visit www.h2kinfosys.com. Request for a free demo before making an informed decision.
2 Responses