- Unit testing is a software development process in which the smallest testable parts of an application, called units, are individually and independently scrutinized for proper operation. Unit testing is often automated but it can also be done manually. This testing mode is a component of Extreme Programming (XP), a pragmatic method of software development that takes a meticulous approach to building a product by means of continual testing and revision.
Unit testing involves only those characteristics that are vital to the performance of the unit under test. This encourages developers to modify the source code without immediate concerns about how such changes might affect the functioning of other units or the program as a whole. Once all of the units in a program have been found to be working in the most efficient and error-free manner possible, larger components of the program can be evaluated by means of integration testing.
Unit testing can be time-consuming and tedious. It demands patience and thoroughness on the part of the development team. Rigorous documentation must be maintained. Unit testing must be done with an awareness that it may not be possible to test a unit for every input scenario that will occur when the program is run in a real-world environment.
 |
Learn more about Software unit testing |
| Better software through debugging and unit testing: Bugs plague software project big and small, and today's complicated software makes debugging more difficult than ever. Let these tips, tutorials, podcasts and articles help you. |
| Unit testing critical for improving software quality: With unit testing, programmers can catch bugs early before they cause problems. It's important to encourage such testing and not scare programmers with extreme testing practices. |
| Beautiful Code -- Chapter 7, Beautiful Tests: This excerpt written by Alberto Savoia shows how a broad, creative approach to testing can not only eliminate bugs but help programmers do their jobs better. |
The Way of Testivus … or How to Complete Projects Ahead of Schedule: or How to Complete Projects Ahead of Schedule
Here's a unique booklet that drives home the importance of software testing, particularly unit testing. |
| Better software through debugging and unit testing: Bugs plague software project big and small, and today's complicated software makes debugging more difficult than ever. Let these tips, tutorials, podcasts and articles help you. |
| Better software through debugging and unit testing -- Other useful resources: Here is a list of books, blogs and Web sites that can offer you more information on debugging, unit testing, XP and test-driven development. |
| Better software through debugging and unit testing -- Unit testing, Extreme Programming and TDD: Unit testing is a key element of Extreme Programming (XP) and test-driven development (TDD). These tips, tutorials and articles will help you further understanding unit testing. |
| Better software through debugging and unit testing -- Unit testing basics: Unit testing is critical part of the debugging process. These tips, tutorials and podcasts explain what unit testing is and how to effectively conduct them. |
The Way of Testivus … or How to Complete Projects Ahead of Schedule: or How to Complete Projects Ahead of Schedule
Here's a unique booklet that drives home the importance of software testing, particularly unit testing. |
| LAST UPDATED: |
15 Feb 2007
|
 |
Do you have something to add to this definition? Let us know.
Send your comments to techterms@whatis.com
|

 |
More resources from around the web:
|


');
// -->


 |
 |
|  |
RELATED GLOSSARY TERMS
| Terms from Whatis.com − the technology online dictionary |
 |
mock object
(SearchSoftwareQuality.com)
A mock object is a simulated object that mimics the behavior of a real object in controlled ways. Mock objects are often employed in unit testing to...
|
 |
V-Model
(SearchSoftwareQuality.com)
The V-Model, also called the Vee-Model, is a product-development process originally developed in Germany for government defense projects......
|
|

|