unit testing
Home > Software Quality Definitions - Unit testing
SearchSoftwareQuality.com Definitions (Powered by WhatIs.com)
EMAIL THIS
LOOK UP TECH TERMS Powered by: WhatIs.com
Search listings for thousands of IT terms:
Browse tech terms alphabetically:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #

unit testing



Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   

DEFINITION -

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.

LAST UPDATED: 15 Feb 2007

Read more about unit testing:
- Don Wells outlines the basics of unit testing as a part of Extreme Programming.
- Jeff Canna compares unit testing and functional testing.
- Charles Miller offers six rules for conducting unit tests.
- Michael Feathers defines an alternative set of unit testing rules.


Do you have something to add to this definition? Let us know.
Send your comments to techterms@whatis.com


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   


RELATED CONTENT
Software testing deliverables: Developing a software testing strategy
David Johnson updates his popular tip on software testing deliverables with detailed information on forming a test strategy.
Evaluating the benefits of automated software testing
Depending on your role in your development team, your definition of what "automated testing" is will change. Regardless, automated testing should be...
Adopting continuous integration brings agility, other benefits
CI practices can give your development organization a head start on increasing agility, but adoption is still not widespread.

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......




Software Quality - unit testing Articles
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts