This paper is an overview of software unit testing. It defines unit testing, and discusses many of the issues, which must be addressed when planning for unit testing. It also makes suggestions for appropriate levels of formality and thoroughness of unit testing. Software unit testing is an integral part of an efficient and effective strategy for testing systems. The designer of the code under test best performs it. The appropriate level of formality and thoroughness of the testing will vary from project to project, and even within a project depending on the criticality, complexity, and risk associated with the unit. The policy in this regard should be decided early in test planning, and documented, usually in the Project Plan or separate Master Test Plan. In most cases it is acceptable to adopt an approach which requires little documentation overhead. However there are some basic requirements which should always be met. In particular it must be reviewable, repeatable, and archivable. Commonly, unit testing will be recorded in lab books, or in hand-written notes on code listings stored in the project journal, with guidance provided by a checklist that identifies the required unit testing activities.
Related white papers
End-to-End Application Performance Management
The particular challenge of maintaining complex applications is that they cut across separate IT silos. An application will often include a Web tier, application logic, a database, and a storage...
Software Estimation Best Practices – Level 200  Â
With a software project, the top three factors that determine its ultimate success are estimation, estimation, and estimation. Without good estimation, a good plan is impossible because your plan is...
Design and Architecture for .NET Applications - Level 300
There are many ways to design a .NET application. In this webcast based on MagenicÂ’s architecture experience with .NET at numerous clients, learn which ways work best for Web and...
Software Developer Increases Product Scalability With Access to the Right Resources
Multi-Systems, Inc. (MSI) wanted to improve the scalability of its next-generation hotel property management system. The company attended an Architecture Design Session and Proof-of-Concept Workshop at a Microsoft Technology Center,...
Application Lifecycle Management With ClearQuest 7.1.0.0
This overview of the concepts and design goals behind an out-of-the-box Application Lifecycle Management (ALM) solution for IBM Rational ClearQuest illustrates the benefits of using ClearQuest and the ALM package...
MSDN Webcast: Overview of New Features for Windows Applications (Level 200)
This webcast is specifically for a Windows application developer. The presenter of this webcast takes a fresh look at how the functionality in the Microsoft Visual Studio 2008 development system...
Top Strategies to Reduce Cost While Increasing Quality in Application Delivery
Reducing cost and increasing quality of applications at the same time is not a combination you see very often. IT usually has to sacrifice one for the other. In this...

