Looking at the complete scene of software development the area of software testing suffers from a lack of knowledge and a great number of misunderstandings in the engineering community. On the one hand you have the average engineer who believes that an extensive session on the emulator done on his new module consitutes software testing. On the other hand you have a common misunderstanding on the side of managers who believe that after spending so many hours in testing the software is free of errors.
Be honest to yourself, you will most likely know what object oriented programming is all about. You have heared of the UML design method, etc., but do you know off hand what "equivalence partitioning" means? Testing is an art in itself, with its own theories, ways to measure metrics, standards for its documentation and methods of testing. There is enough good literature around so that you can dig into the subject for yourself and build up these skills personally or in your company. I tried to show some of these basic practices in this section about testing, and in addition to this you can book my training on testing.