|
|
Line 3: |
Line 3: |
| = 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. |
| 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.
| |
Revision as of 22:35, 4 September 2010
Unit-testing frameworks for Ruby
Unit Testing
Units are the smallest building blocks of software.