Unit 1

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 22

SOFTWARE TESTING

Prepared By
C.ASWINI
Assistant Professor (IT),
Government College of Technology.
UNIT I INTRODUCTION

 Testing as an Engineering Activity – Testing as a Process – Testing Maturity


Model- Testing axioms –Basic definitions – Software Testing Principles – The
Tester‘s Role in a Software Development Organization – Origins of Defects –
Cost of defects – Defect Classes – The Defect Repository and Test Design –
Defect Examples- Developer/Tester Support of Developing a Defect Repository

C.Aswini, AP/IT, GCT 04/07/2024 2


Software Testing : Introduction

 IEEE Definition :
 A process of analyzing a s/w item to detect the difference between existing and
required conditions (error /defect / bugs) and to evaluate the features of the s/w
item .
 Definition 1: Process of evaluating a system or its components with the intent
to find whether it satisfies the specified requirements or not.
 Definition 2: an investigation conducted to provide stakeholders with
information about the quality of the product or service

C.Aswini, AP/IT, GCT 04/07/2024 3


Software testing Standards
 ISO/IEC/IEEE 29119 Software Testing is an internationally agreed set of standards
for software testing that can be used within any software development life cycle or
organisation.
 Internationally-recognised and agreed standards for software testing, which will
provide your organisation with a high-quality approach to testing that can be
communicated throughout the world.
 There are currently five standards in the series:
• ISO/IEC 29119-1: Concepts & Definitions
• ISO/IEC 29119-2: Test Processes
• ISO/IEC 29119-3: Test Documentation
• ISO/IEC 29119-4: Test Techniques
• ISO/IEC 29119-5: Keyword Driven Testing
 https://softwaretestingstandard.org/
C.Aswini, AP/IT, GCT 04/07/2024 4
Who is involved in Testing ?

 Test Specialist
 S/w Developer
 Project leader Manager
 End User

C.Aswini, AP/IT, GCT 04/07/2024 5


When to start the testing process?

 Every Phase of SDLC

C.Aswini, AP/IT, GCT 04/07/2024 6


When to end the testing process?

 When Testing Deadline comes


 Completion of test case execution
 Bug rate falls below certain level & no high priority bugs are identified
 Management decision
 Example : S/W Testing Automation Tools
 Telerik Test Studio , Selenium , TestComplete , HP Quick Test Professional ,
Silk Test, Win Runner ,Load Runner

C.Aswini, AP/IT, GCT 04/07/2024 7


Testing as an Engineering Activity
 Poor quality of software that can cause loss of life or property is no longer acceptable to
society .
 Failures can result in catastrophic losses.
 Conditions demand software development staffs with interest and training in the areas of
software products and process quality.
 Highly qualified staffs ensures that software products are built on time, within budget and are
of the highest quality with respect to attributes such as reliability, correctness, usability and
ability to meet all user requirements.
 The demand for high quality software’s and the need for well educated software professionals
there is a movement to change the way software is developed and maintained.
 The profession of software engineering is slowly emerging as a formal engineering discipline .
 The movement towards this new profession is the focus of the entire November /December
1999 issues of IEEE Software.

C.Aswini, AP/IT, GCT 04/07/2024 8


Testing as an Engineering Activity
 Poor quality of software that can cause loss of life or property is no longer acceptable to society .
 Failures can result in catastrophic losses.
 Conditions demand software development staffs with interest and training in the areas of software products
and process quality.
 Highly qualified staffs ensures that software products are built on time, within budget and are of the highest
quality with respect to attributes such as reliability, correctness, usability and ability to meet all user
requirements.
 The demand for high quality software’s and the need for well educated software professionals there is a
movement to change the way software is developed and maintained.
 The profession of software engineering is slowly emerging as a formal engineering discipline .
 The movement towards this new profession is the focus of the entire November /December 1999 issues of IEEE
Software.
 The education and training of engineers in each engineering discipline is based on the teaching of related
scientific principles, engineering processes, standards, methods, tools, measurements.
 The goal and task force team is to define a body of knowledge that covers the software engineering discipline,
to discuss the nature of education for this new profession and to define a code of ethics for the software
engineers
C.Aswini, AP/IT, GCT 04/07/2024 9
Testing as an Engineering Activity

C.Aswini, AP/IT, GCT 04/07/2024 10


Using Engineering Approach to software
development implies that
 The development process is well understood
 Project are planned
 Life cycle models are defined and adhered to
 Standards are in place for products and process
 Measurements are employed to evaluate products and process quality
 Components are reused.
 Validation and verification processes play a key role in quality determination
 Engineers have proper education, training and certification

C.Aswini, AP/IT, GCT 04/07/2024 11


 A test specialist is one whose education is based on the principles , practices
and processes that constitute the software engineering discipline, and whose
specific focus is on one area of that discipline – software testing .
 A test specialist who is trained as an engineer should have knowledge of test
related principles, processes, measurements, standards, plans, tools and
methods, and should learn how to apply them to the testing tasks to be
performed.

C.Aswini, AP/IT, GCT 04/07/2024 12


Role of Process in Software Quality:
 Process, in the software engineering
domain , is the set of methods, practices,
standards , documents , activities , policies
, and procedures that software engineers
use to develop and maintain a software
system and its associated artifacts , such
as project and test plans, design
documents code and manuals
 The software development process like
most engineering artifacts must be
engineered .
 Software process improvement models that
have had wide acceptance in industry are
high level models, in the sense that they
focus on the software process as a whole
and do not offer adequate support to
evaluate and import specific software
development sub processes such as design
andGCT
C.Aswini, AP/IT, testing. 04/07/2024 13
Testing as a Process
 Process has been described as a series of phases, procedures, and steps
that result in the production of a software product. Embedded within this
are several processes.
 Validation is the process of evaluating a software system or components
during or at the end of, the development cycle in order to determine
whether it satisfies specified requirements
 Validation is usually associated with traditional execution based testing
that is exercising the code with test cases
 Verification is the process of evaluating a software system or component
to determine whether the products of a given development phase satisfy
the conditions imposed at the start of that phase.
 Verification is usually associated with activities such as inspections and
reviews of software deliverables

C.Aswini, AP/IT, GCT 04/07/2024 14


C.Aswini, AP/IT, GCT 04/07/2024 15
Software Development Process
 Testing is generally described as a process as a group of procedures carried
out to evaluate some aspects of a piece of software.
 Testing can be described as a process used for revealing defects in software,
and establishing that the software has attained a specified degree of quality
with respect to selected attributes.

C.Aswini, AP/IT, GCT 04/07/2024 16


Debugging vs. Testing

 Debugging process begins after localization has been carried out and the
tester has noted that the software is behaving as specified
 Debugging or Fault Localization is the process of
(1) Locating the fault or defect
(2) Repairing the code
(3) Retesting the code

C.Aswini, AP/IT, GCT 04/07/2024 17


Aspects of Testing
 Testing as a process has economic, technical and managerial aspects.
 Economic aspects are related to the reality that resources and time are
available to the testing group on a limited basis
 Technical Aspect of testing are relate to the techniques, methods,
measurements, and tools used to insure that the software under test is a
defect free and reliable as possible for the conditions and constraints under
which it must operate
 Managerial Aspect – Minimally that means that an organizational policy for
testing must be defined and documented.
 Testing must be planned, testers should be trained, the process should have
associated quantifiable goals that can be measured and monitored

C.Aswini, AP/IT, GCT 04/07/2024 18


Testing Maturity Model - Introduction

 To know about Testing , one must find answer for following queries
 Where do we begin to learn more about testing ?
 What areas of testing are important?
 Which topics need to be addressed first?

C.Aswini, AP/IT, GCT 04/07/2024 19


Testing Maturity Model - Definition
 TMM is a learning tools ,or framework to learn about testing. It introduces both the technical and
managerial aspects of testing. It evolve testing process both in the personal and organizational levels.
 It follows staged architecture for process improvement models.
 It has five levels that prescribe a maturity hierarchy and an evolutionary path to test process
improvement. Each level has ( Except Level 1)
 A set of maturity goals - The maturity goals identify testing improvement goals that must be addressed in order
to achieve maturity at that level.
 Supporting maturity subgoals - They define the scope, boundaries and needed accomplishments for a particular
level.
 Activities, tasks and responsibilities (ATR) - address implementation and organizational adaptation issues at
each TMM level.
 Supporting activities and tasks are identified, and responsibilities are assigned to appropriate groups.

C.Aswini, AP/IT, GCT 04/07/2024 20


Internal Structure & 5-level structure of TMM

C.Aswini, AP/IT, GCT 04/07/2024 21


References

 Ilene Burnstein, “Practical Software Testing”, Springer International Edition,


2003

C.Aswini, AP/IT, GCT 04/07/2024 22

You might also like