0% found this document useful (0 votes)
24 views8 pages

Se Unit 4

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views8 pages

Se Unit 4

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 8

UNIT IV

Testing Strategies:

A strategic approach to software testing, test strategies


for conventional software, Black-Box and White-Box
testing, Validation testing, System testing, the art of
Debugging.

Product metrics:

Software Quality, Metrics for Analysis Model, Metrics for


Design Model, Metrics for source code, Metrics for testing,
Metrics for maintenance.

Metrics for Process and Products:

Software Measurement, Metrics for software quality.

A STRATEGIC APPROACH TO SOFTWARE TESTING

 A strategic approach to software testing in software


engineering is essential for ensuring software quality,
minimizing defects, and optimizing resources.
 This approach involves planning, structuring, and executing
testing activities in a way that aligns with the project's goals,
timelines, and risks.
 Testing is a set of activities that can be planned in advance
and conducted systematically.
 A number of software testing strategies have been proposed.
All provide you with a template for testing and all have the
following generic characteristics:

1. To perform effective testing, you should conduct effective


technical reviews. By doing this, many errors will be
eliminated before testing commences.
2. Testing begins at the component level and works “outward”
toward the integration of the entire computer-based system.
3. Different testing techniques are appropriate for different
software engineering approaches and at different points in
time.
4. Testing is conducted by the developer of the software and
an independent test group.
5. Testing and debugging are different activities, but debugging
must be accommodated in any testing strategy.
6. A strategy for software testing must accommodate low-level
tests that are necessary to verify that a small source code
segment has been correctly implemented as well as high-
level tests that validate major system functions against
customer requirements.
Verification and Validation

Verification refers to the set of tasks that ensure that


software correctly implements a specific function.
Validation refers to a different set of tasks that ensure
that the software that has been built is traceable to
customer requirements.

Software Testing Strategy

The software process may be viewed as the spiral


illustrated in Figure

Initially, system engineering defines the role of software


and leads to software requirements analysis, where the
information domain, function, behavior, performance,
constraints, and validation criteria for software are
established. Moving inward along the spiral, you come to
design and finally to coding. To develop computer
software, you spiral inward (counterclockwise) along
streamlines that decrease the level of abstraction on
each turn.

Unit testing begins at the vortex of the spiral and


concentrates on each unit (e.g., component, class, or
WebApp content object) of the software as implemented
in source code. Testing progresses by moving outward
along the spiral to integration testing, where the focus is
on design and the construction of the software
architecture. Taking another turn outward on the spiral,
you encounter validation testing, where requirements
established as part of requirements modeling are
validated against the software that has been constructed.
Finally, you arrive at system testing, where the software
and other system elements are tested as a whole. To test
computer software, you spiral out in a clockwise direction
along streamlines that broaden the scope of testing with
each turn.
TEST STRATEGIES FOR CONVENTIONAL SOFTWARE
 Test strategies for conventional software focus on
ensuring the correctness, reliability, and performance of
systems built using well-established software development
practices.
 There are many strategies that can be used to test software.
 At one extreme, you can wait until the system is fully
constructed and then conduct tests on the overall system in
hopes of finding errors.
 This approach simply does not work. It will result in buggy
software.
 At the other extreme, you could conduct tests on a daily
basis, whenever any part of the system is constructed.
 This approach, although less appealing to many, can be very
effective.
 A testing strategy that is chosen by most software teams
falls between the two extremes.
o It takes an incremental view of testing,
o Beginning with the testing of individual program units,
 Moving to tests designed to facilitate the integration of the
units,
 Culminating with tests that exercise the constructed system.

Unit Test :
Unit testing focuses verification effort on the smallest unit of software design—the software
component
or module.
The unit test focuses on the internal processing logic and data structures within the boundaries of a
component.
This type of testing can be conducted in parallel for multiple components.

Different Integration Testing Strategies


Top-down testing
Bottom-up testing
Regression Testing
Smoke Testing

You might also like