0% found this document useful (0 votes)
221 views33 pages

UNIT 5 Notes - Ooad

The document discusses object oriented methodologies, software quality assurance testing, and test case and test plan development. It covers various object oriented modeling techniques like Rumbaugh, Booch, and Jacobson methodologies. It also discusses the impact of object orientation on testing and strategies like black box, white box, top-down and bottom-up testing. Guidelines are provided for developing quality assurance test cases and test plans.

Uploaded by

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

UNIT 5 Notes - Ooad

The document discusses object oriented methodologies, software quality assurance testing, and test case and test plan development. It covers various object oriented modeling techniques like Rumbaugh, Booch, and Jacobson methodologies. It also discusses the impact of object orientation on testing and strategies like black box, white box, top-down and bottom-up testing. Guidelines are provided for developing quality assurance test cases and test plans.

Uploaded by

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

TESTING

TESTING

SYLLABUS
Object Oriented Methodologies – Software Quality
Assurance – Impact of object orientation on Testing –
Develop Test Cases and Test Plans
OBJECT ORIENTED MODELLING
 Object Oriented modeling is a new system
development approach encouraging and facilitating
reuse of software components.’
 It employs international standard unified modeling
language from object management group.
 Using this methodologies, a system can be developed
on component basis which enables the effective reuse
of existing components.
 It facilitates the sharing of its other system
components.
OBJECT ORIENTED METHODOLOGIES
various object oriented methodologies.
 Rumbaugh methodology is well suited for
describing the object model or static structure of the
system.
 Jacabson methodology is good for producing user
driven analysis model
 Booch methodology produces detailed object
oriented design model
Rumbaugh methodology.

 OMT(Object modeling technique) was the first object


oriented methodologies introduced by Rumbaugh.
 OMT describes the method for analysis, design and
implementation of the system using object oriented
technique.
 It is the fast approach for identifying and modeling all
objects making up the system.
Booch methodology
 It is widely used object oriented method that helps us
design our system using object paradigm, It covers the
analysis and design phases of an object oriented system. By
start with class and object diagram in analysis phase and
refine this diagram in various steps. Booch method consists
of following diagrams.
 Class diagram
 Object diagram
 State transition diagram
 Module diagram
 Process diagrams
 Interaction diagrams
Jacabson methodology
 It consists of OOBE (Object Oriented Business
engineering) and OOSE (Object Oriented Software
engineering) covers entire life cycle and stress
traceability between different phases both forward and
backward.
 This traceability enables reuse of analysis and design
work possibly much bigger factor in reduction of
development time than reuse of code.
 Use case concept is the heart of this methodology
Objectives of object oriented
methodology
 To encourage greater reuse.

 To produce more detailed specification of system


constraints.

 To have fewer problems with validation.


Benefits of object oriented
methodology
 It represents problem domain which is easier to
produce and understand design
 It allows changes more easily
 It provides nice structures for thinking and abstracting
leads to modular design
 Reusability
 Simplicity
 Scalable
 Maintainable
 Modularity
SQA-Software Quality Assurance
• SQA is software quality assurance.

• It is a planned and systematic pattern of all actions


necessary to provide an adequate confidence that an
item or product conforms to establish technical
requirements.

• It is a set of activities designed to evaluate the


process by which the products are developed or
manufacture.
Software testing
 Software testing is a method of assessing the functionality of a
software program.

NEED:
 Software testing is very important because of the following
reasons:

 Software testing is really required to point out the defects and


errors that were made during the development phases.

 It’s essential since it makes sure of the Customer’s reliability and


their satisfaction in the application.
Quality assurance test
➢ Quality Assurance – In general computers are doing
what you tell them to do not what you want them to
do.
➢ Debugging – is the process of finding out where
something went wrong and correcting the code to
eliminate the errors.
➢ Kinds of errors
1. Language(Syntax) Errors – Incorrectly Constructed
code
2. Run time Errors – Detected in Program is running.
3. Logic Errors – Code does not perform the way you
intended.
Quality assurance test
➢ Elimination of Syntax error is the process of
Debugging
➢ Elimination of Logical error is the process of testing.
➢ Quality assurance test divided in to two categories.
1. Error based Testing
2. Scenario based Testing.
Error Based Testing
➢ It is a technique search a given Class method for
particular clues of interest and describe how these
clues of interest tested.
➢ This method should handle any value, if not error
must be recorded and reported.
Quality assurance test
Scenario Based Testing or Usage based testing
➢ Concentrates on what user does not what the
product does.
➢ Capturing the use cases and the task perform
Testing Strategies
There are many testing Strategies.
1. Black box testing
2. White box Testing
3. Top down Testing
4. Bottom up Testing
Testing Strategies
Black box testing
➢ Used to represent the system whose inside working
are not available for inspecting.
➢ Logic is unknown
➢ What goes in what goes out.
➢ In black box testing you try varies input and examine
the resulting output.
➢ It works nice for object oriented environment.
➢ It also can be used for scenario based testing.
Testing Strategies
White box testing
➢ Assumes that specific logic is important and must be
tested to guarantee the system proper functioning.
➢ The main use of white box is in error based testing.
➢ One form white box testing called path testing.
➢ Two types.
1. Statement testing coverage
2. Branch testing coverage
Testing Strategies
Top down testing
➢ Assumes that the main logic or object interaction
and the system messages of the application need
more testing.
➢ Top down testing can detect the series design flaws
early in the implementation
Testing Strategies
Bottom up testing
➢ Starts with details of the system and proceeds higher
level by a progressive aggregation.
➢ Appropriate for testing the individual objects
➢ Starting the methods or classes
➢ Then test combination of two or more levels.
➢ This leads to integration testing and System test.
Impact of Object Orientation on
Testing
➢ It can be summarized by
1. Some type of errors could become less plausible (Not
Worth)
2. Some type of errors could become More plausible
(Worth)
3. Some new type of errors might appear.
For Example:
➢ When one method invoke.
➢ Hard to tell which method is invoked.
➢ It leads to unexpected value.
Impact of Object Orientation on
Testing
➢ X= computePayroll();
➢ In object oriented environment the behaviours of
base::computePayroll(), derived::computePayroll(),
and so on,
➢ The problem can be complicated if you have
multiple inheritance.
➢ Two impacts
1. Impacts of inheritance in testing
2. Reusability of tests
Impact of Object Orientation on
Testing
1. Impacts of inheritance in testing
➢ The base class contains methods inherited() and
redefined().
➢ The derived class redefines the redefined().
➢ The derived::redefined() tested as fresh because it is
new code.
➢ Does derived inherited have to retested?
➢ If redefined uses inherited() may mishandle the new
behaviour.
Impact of Object Orientation on
Testing
2. Reusability of tests
➢ The base redefined and derived redefined are two
different methods with different implemnetations.
➢ It needs different set of test requirements.
➢ But if methods are likely be same.
➢ Then the test requirements will overlap.
➢ So you need to write new tests.
Test Cases
➢ All the services of a system must be checked at least
one test.
➢ To test a system you must construct some test cases,
then describe how the test will look.
➢ Next perform the test and compare the outcome with
expected value.
➢ Objectives of testing:
✓ Testing is the process of executing a program and
finding the errors.
✓ A good test case is high probability to find errors
✓ A successful test case that detects the undiscoverd
error.
Test Cases
Guidelines for developing Quality Assurance Test.
✓ Describe which service your test attempt to cover
✓ If test case is based on a use case, best idea to refer
the use case name.
✓ Specify what you are testing and which particular
method.
✓ Test the normal use of objects method.
✓ Test the abnormal but reasonable use of objects
method.
✓ Test the abnormal and unreasonable use of objects
method.
✓ Test the boundary conditions.
Test Cases
Guidelines for developing Quality Assurance Test.
✓ Test the objects interaction and messages sent
among them.
✓ The internal quality of the software such as
reusability and extendability should assess well.
➢ Specifying results is crucial in developing the test
cases.
➢ If test cases are supposed to fail it will lead to alert
the person
Test Cases
Example
✓ Testing File open feature.
1. Drop down of the file menu and select open
2. Try to opening the following types of files.
 A file that is there(should work)
 A file that is not there (show error message)
 A file name with international characters(should
work)
Test Plan
➢ A Good idea is to use a test plan to find bugs and
remove them.
➢ A test plan is developed to detect and identify
potential problems before delivering the software to
users.
➢ A test plan offers,
➢ Road map for testing activities
➢ Usability
➢ User satisfaction
➢ The objective of the test plan is need not be very
large.
Test Plan
The following steps for create a test plan
1. Objectives of the test
▪ Create the objective and describe how to achive.
2. Development of a test case
▪ Develop the test data both input and expect output
3. Test analysis
▪ Examine the test output and documentation test
analysis.
▪ If bug detected reported to activity centre for
debugging
▪ After Debugging steps 1 to 3
Test Plan
➢ All passed tests should be repeated with the revised
program called regression testing.
➢ Who should do the testing?
➢ For small application the designer team develop the
test cases and test plan
➢ However many organization have separate team for
testing.
Guidelines for Developing Test plan
 Dictate a specific format your test plan.
 Test plan should have schedule and resources need.
 You need to document.
Test Plan
 A configuration control system provide way of
tracking the changes of the code.
 Plan should be up to date.
 Take time to routine updates.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy