You are on page 1of 3

TESTING

6.1 TESTING OBJECTIVES


In light of the diversity of existing software testing, it is advantageous to consider the
types of tests as they become available to a designer. This will also help identify the scope of a
particular test and clarify its main advantages and disadvantages as well as make the developer
aware about the limitations of this test.

Functional Tests are used to exercise the code with nominal inputs (input values) for
which the expected values are available. We also know the boundary conditions for these inputs.
For instance, functional testing of matrix multiplication can involve some data (matrices) for
which the results are known in advance.

Performance Tests are utilized in order to determine the widely defined performance of
the software system such as an execution time associated with various parts of the code, response
time(in case of embedded systems),and device utilization. The intent of this type of testing is to
identify weak points of a software system and quantifying its shortcomings, leading to further
improvements.

Stress Tests are designed to break a software module. This type of testing determines the
strengths and limitations of the software.
Structure Tests are aimed at exercising the internal logic of a software system.

Testing In Small-Testing In The Large. The underlying criterion concerns which part
of the system is subject to testing. If we are concerned with individual modules, procedures, and
functions, this lead to testing in the small. Testing in the large is primarily devoted to integration
testing when the system is developed out of some already constructed modules.

Black Box-White(Glass)Box Testing. As the name suggests, the criterion leading to this
type of discrimination specifies whether the internal(logical)structure of the system is available
for testing purposes. if so, we are concerned with white box testing. If the internal structure is not
available or exercised when developing the test suite, we confine ourselves to black box testing.
Depending which way was selected, the points of view on testing are also radically different. In
black box testing we are interested to test what the system is supposed to do. The testing is
worked out from input data perspective; subsequently we see if the outputs (actions) of the
software match the expected values. Functional, stress, and performance tests fall under this
general category. In white box testing, testing concentrates on what the system does. Essentially,
using detailed knowledge of code, one creates a battery of tests in such a way that they exercise
all components of the code (say, statements, branches, paths).structural testing sub schemes
white box testing.
6.2 PHASES OF TESTING
Testing can be divided into a number of phases as shown below:
 Program Testing
 System Testing
 User Acceptance Testing

Program Testing:
The purpose of program testing is to check out whether the program is working
accordingly to the specification given. This phase ensures that the program or modules function
ass expected. In this phase, all parts of the program are checked thoroughly

System Testing:
System testing should prove that the computer system work as intended and are
acceptable to user operations and audit. It would also show that the system would interface
correctly with other existing computer systems. The running of system test should be under the
control of operations, it can also prove that all the operations, so that operating procedures can
prove to be correct. There should be sufficient volume of data to demonstrate that the system
meets the performance constraints.

User Acceptance Testing:


User
acceptance testing to be performed must be established and agreed during analysis. It may be
urn in parallel with the existing system so that users will create special test data. The key
difference between system testing and user acceptance testing is that the user are interested in
the inputs and outputs. The inputs and outputs are verified with existing system and checked to
see if it is the same.
Level of Testing:
There are two levels of testing used the package they are:
 Unit Testing
 System Testing

Unit Testing:
Unit testing focuses verification effort on the smallest unit of software design. Unit testing is
simplified when a module with high cohesion is designed. In unit testing various programs,
which comprises the system are tested separately. So unit testing is sometimes called as
“Program Testing”. This reduces the error produced by the larger program.
The system testing is used to find the integration of each module in the system. It is also tested
to find discrepancies between the system and its original objectives, current specification and
system documentation. System testing is a series of different test whose primary purpose is to
fully exercise the computer-based system. Testing is used to find the compatibility between the
various programs units available in the system.

Testing Strategies:
Testing of the software ids done in the aim of finding errors. Test cases are devised to bring out
errors in the system. The test data are created with the intention of determining whether the
system will program will handle them appropriately. There are two general testing strategies
for testing software namely:
 Code Testing
 Specification Testing

You might also like