Specialized Tests
Stress, Capacity or Load Testing
|
These stages judge the ability of an application or system to
function when near or beyond the boundaries of its specified
capabilities or requirements in terms of the volume of information
used. The stress, load, or capacity testing stage is often considered
synonymous with the performance testing stage. Stress testing
attempts to break the system by overloading it with large volumes. It is
usually performed by the software developer after, or in
conjunction with, integration or system testing. Typically stress
testing cannot be performed earlier because the full application is
usually necessary. Although the following specialized testing stages
are not considered stress testing, they also test how the system will
perform under adverse conditions.
Error-Handling/Survivability Testing
This stage assesses the software product’s ability
to properly process incorrect transactions and survive from reasonably
expected (or unexpected) error conditions.
Recovery Testing
This stage assesses the software product’s ability to restart operations after
integrity of the application has been lost.
Security Testing
Security testing is used to evaluate whether a software product can
adequately prevent improper access to information. Security
testing is usually performed before and after the product has been
released by testing personnel or by highly specialized consultants
employed by the user.
Performance Testing
This stage is used to determine whether an application can meet its
performance goals. Typically the performance testing
stage is executed by the software developer during, or in conjunction
with, system testing. Benchmarks are standards against which
other measurements may be referred and are used to provide competitive
analysis information that marketing and sales personnel can use
to give consumers measures of the software’s quality relative
to other products. Customers use marketing benchmarks to compare
performance prior to purchase, whereas system architects and designers
use technical benchmarks to characterize performance prior to
manufacturing.
Platform Testing Stage
Sometimes known as the
compatibility testing stage, platform testing
evaluates the software’s ability to operate on multiple
hardware platforms or multiple operating systems or to interface
with multiple software products.
|
User-Involved Tests
Usability Testing
Also known as the human factors testing, stage is conducted to
identify operations that will be difficult or inconvenient for users.
Usability testing is generally performed before beta testing.
Field or Beta Testing
This stage is an external test involving customers. Beta testing
usually occurs after system testing. External beta testing and internal
usability testing may occur concurrently. The next two testing
activities are associated with, or have similar goals as,
field testing.
Alpha Testing
These activities are typically used when special laboratories are
involved to house complex new hardware/software products
that prospective customers will test. Customers test these
products under controlled conditions prior to having the software system
installed at their own premises.
Acceptance Testing
This process is used to determine whether a product satisfies
predefined acceptance criteria. It is a combination of other types of tests to
demonstrate that the product meets user requirements. Sometimes,
alpha and beta testing are considered a part of
acceptance testing.
|
|