CSC/ECE 517 Fall 2010/ch1 1f TU: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 2: Line 2:


= Unit Testing =
= Unit Testing =
Units are the smallest building blocks of software. In a language like C, individual
Units are the smallest building blocks of software. In a language like C, individual
functions make up the units. Unit testing is the process of validating such small building
functions make up the units. Unit testing is the process of validating such small building

Revision as of 22:35, 4 September 2010

Unit-testing frameworks for Ruby

Unit Testing

Units are the smallest building blocks of software. In a language like C, individual functions make up the units. Unit testing is the process of validating such small building blocks of a complex system much before testing an integrated large module or the system as a whole. Some of the major benefits are: • Be able to test parts of a project with out waiting for the other parts to be available, • Achieve parallelism in testing by being able to test and fix problems simultaneously by many engineers, • Be able to detect and remove defects at a much less cost compared to other later stages of testing, • Be able to take advantage of a number of formal testing techniques available for unit testing, • Simplify debugging by limiting to a small unit the possible code areas in which to search for bugs, • Be able to test internal conditions that are not easily reached by external inputs in the larger integrated systems (for example, exception conditions not easily reached in normal operation) • Be able to achieve a high level of structural coverage of the code, • Avoid lengthy compile-build-debug cycles when debugging difficult problems.