XpdWiki

FrontPage
RecentChanges
XtC
FindPage
PageIndex
XpApprentices

Set your name in
UserPreferences

Edit this page

Referenced by
Xtc20030225
NatureofTesting




JSPWiki v2.0.52


TypesOfTests


Tests can be categorised in terms of how they are performed; structural and functional testing. Structural (a.k.a. glass-box) testing relies on knowledge of the product's construction and usually requires some sort of access to its source code. For example; a structural test might involve passing a function some parameter and measuring the resultant return value. Functional (a.k.a. black-box) testing requires no knowledge of the product's construction as it simply applies some form of external input to the product and observes the resultant external output. For example; a functional test might involve clicking mouse on a window and observing the resultant a beep. Structural and functional tests provide two fundamentally different ways of testing the same collection of parts.

Tests can also be categorised in terms of what they test; unit, component, integration and system testing. Unit Tests are used to validate that a piece of code, typically a function, when executed in isolation from the rest of the product doesn't show any bugs and meets its specification. The ultimate objective of such testing is to cause the execution of every statement in the unit of code (100% code coverage) and check the results of a full range of data that could be applied to it. Component Tests build on the work of unit testing by testing the piece of code as a part of the product, so for example, the result of calls to other functions in the product are included in the test. Unit and Component test are usually structural tests.

Integration Tests are used to validate that pieces of code when joined together still meet their requirements and don't reveal any new bugs. Typically, the pieces of the product are joined together into progressively larger components and integration testing is performed at every stage until you test can from one end of the product to the other. System Tests are performed to check the product operating in the environment of a typical production system, doing real-world work for the business. New bugs are often exposed only under conditions of heavy load, low memory and other stressed conditions that might not exist in your development environment. During system testing you might also validate the product's performance, reliability and security in a real-world environment. Integration and System tests should comprise of both structural and functional tests.

Extracted from an article by BillStott



Edit this page   More info...   Attach file...
This page last changed on 27-Feb-2003 17:20:07 GMT by unknown.