Thoroughly testing new software applications is inescapable. Although this statement is widely accepted, the opinions on what thoroughly exactly means are deeply divided. To what degree is testing required and at what costs does it remain affordable? Are functional unit tests sufficient or is it necessary to conduct extensive stress tests of new releases of your applications before placing them into production? Since we are delivering to business areas, it all comes down to a reasonable relation of expense and revenue. Also add in a reasonable magnitude of risk as the costs of testing cannot exceed the costs of failure.

If a unit test of a newly developed application component fails then it can be seen as a lost man-day of a developer’s work schedule. Most companies allow for these days in their test schedules and development costs. However if the same component fails in production it may impact your entire business and have long-term dire implications. Therefore the accepted standard is you increase the intensity and quality of test staging when moving from development to production environments. The concepts of unit, integration, and system tests follow the same thinking. At the lower levels of development, tests may focus on very specific functions of single components, using simple test cases that were developed at the same time when the software’s functionality was defined. As soon as testing moves to higher levels of integration then the requirements of test procedures with near-production quality of test cases grows. e.g. integration testing with multiple components of the system requires test cases with consistent data relations covering the integrated areas. At the highest levels involving system integration tests, the application has to be challenged with test cases that are comparable to the real production data. It is not sufficient to make them “almost” real. They have to be the same or comparable to production in content and volume. How else, if at all, can you come close to guarantee that the application will not fail?
more»
