SlideShare a Scribd company logo
Chapter : Testing Strategies
Strategic approach to software testing
 Generic characteristics of strategic software testing:
 To perform effective testing, a software team should conduct
effective formal technical reviews.
 Testing begins at the component level and works "outward"
toward the integration.
 Different testing techniques are appropriate at different
points.
 Testing is conducted by the developer of the software and
(for large projects) an independent test group.
 Testing and debugging are different activities, but debugging
must be accommodated in any testing strategy.
Verification and Validation
 Testing is one element of a broader topic that is often
referred to as verification and validation (V&V).
 Verification refers to the set of activities that ensure that
software correctly implements a specific function.
 Validation refers to a different set of activities that ensure
that the software that has been built is traceable to
customer requirements.
 State another way:
 Verification: "Are we building the product right?"
 Validation: "Are we building the right product?“
 The definition of V&V encompasses many of the
activities that are similar to software quality assurance
(SQA).
 V&V encompasses a wide array of SQA activities that include
 Formal technical reviews,
 quality and configuration audits,
 performance monitoring,
 simulation,
 feasibility study,
 documentation review,
 database review,
 algorithm analysis,
 development testing,
 qualification testing, and installation testing
 Testing does provide the last bastion from which quality can
be assessed and, more pragmatically, errors can be
uncovered.

Recommended for you

UNIT TESTING PPT
UNIT TESTING PPTUNIT TESTING PPT
UNIT TESTING PPT

Unit testing involves testing individual units or components of code to ensure they work as intended. It focuses on testing small, isolated units of code to check functionality and edge cases. Benefits include faster debugging, development and regression testing. Guidelines for effective unit testing include keeping tests small, automated, independent and focused on the code's public API. Tests should cover a variety of inputs including boundaries and error conditions.

Test Levels & Techniques
Test Levels & TechniquesTest Levels & Techniques
Test Levels & Techniques

Static testing examines and reviews software without executing it, while dynamic testing executes the software. There are different types of testing like unit, integration, system, and acceptance testing. Testing techniques include white box, black box, incremental, and thread testing. White box testing examines internal program structure and logic, while black box testing verifies requirements without considering internal structure.

Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing

Black box testing refers to testing software without knowledge of its internal implementation by focusing on inputs and outputs. There are several techniques including boundary value analysis, equivalence partitioning, state transition testing, and graph-based testing. Black box testing is useful for testing functionality, behavior, and non-functional aspects from the end user's perspective.

software testingsoftware testing companysoftware development
Software Testing Strategy for
conventional software architecture
 A Software process & strategy for software testing may
also be viewed in the context of the spiral.
 Unit testing begins at the vortex of the spiral and
concentrates on each unit (i.e., component) of the
software.
 Testing progresses by moving outward along the spiral
to integration testing, where the focus is on design and
the construction.
 Another turn outward on the spiral, we encounter
validation testing, where requirements established as
part of software requirements analysis are validated
against the software.
 Finally, we arrive at system testing, where the software
and other system elements are tested as a whole.
Testing strategies in Software Engineering
 Initially, tests focus on each component individually,
ensuring that it functions properly as a unit.
 Unit testing makes heavy use of white-box testing
techniques.
 Now, validation testing provides final assurance that
software meets all functional, behavioral, and
performance requirements.
 Black-box testing techniques are used exclusively during
validation.
 Once validated, must be combined with other system
elements (e.g., hardware, people, databases).
 System testing verifies that all elements mesh properly
and that overall system function / performance is
achieved.

Recommended for you

Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101

A presentation to explain the goals and methods of testing to a variety of colleagues who help with testing on certain projects...

qatestingquality
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml

UML (Unified Modeling Language) is a standard language for modeling software systems. It provides notation for visualizing, specifying, constructing and documenting software artifacts. The key components of UML include classes, attributes, operations, relationships, and diagrams. Common UML diagrams are use case diagrams, class diagrams, sequence diagrams, and deployment diagrams. UML is widely used for object-oriented analysis and design. It helps model the problem domain, visualize the system design, and document implementation.

state modeling In UML
state modeling In UMLstate modeling In UML
state modeling In UML

The document discusses state modeling and state diagrams. It defines states as representations of intervals of time that describe an object's behavioral condition. Events trigger transitions between states. A state diagram uses a graph to represent an object's states and the transitions between them caused by events. It specifies the object's response to input events over time. The document provides examples of how to notationally represent states, transitions, events, and other elements in a state diagram.

state diagram
Criteria for Completion of Testing
 There is no definitive answer to state that “we have done
with testing”.
 One response to the question is: "You're never done
testing, the burden simply shifts from you (the software
engineer) to your customer." Every time the customer/
user executes a computer program, the program is being
tested.
 Another response is: "You're done testing when you run
out of time (deadline to deliver product to customer) or
you run out of money (spend so much money on
testing).
Unit testing strategies for conventional
software
 Focuses verification effort on the smallest unit of
software design – component or module.
 Using the component-level design description as a guide
 important control paths are tested to uncover errors
within the boundary of the module.
 Unit test is white-box oriented, and the step can be
conducted in parallel for multiple components.
 Unit test consists of
 Unit Test Considerations
 Unit Test Procedures
Unit Test Considerations
Errors are commonly found during unit testing
 More common errors in computation are
 misunderstood or incorrect arithmetic precedence
 mixed mode operations,
 incorrect initialization,
 precision inaccuracy,
 incorrect symbolic representation of an expression.
 Comparison and control flow are closely coupled to one another
 Comparison of different data types,
 Incorrect logical operators or precedence,
 Incorrect comparison of variables
 Improper or nonexistent loop termination,
 Failure to exit when divergent iteration is encountered
 improperly modified loop variables.

Recommended for you

Unit testing
Unit testing Unit testing
Unit testing

Unit testing involves individually testing small units or modules of code, such as functions, classes, or programs, to determine if they are fit for use. The goal is to isolate each part of a program and verify that it works as intended, helps reduce defects early in the development process, and improves code design. Unit testing is typically done by developers to test their code meets its design before integration testing.

Uml class Diagram
Uml class DiagramUml class Diagram
Uml class Diagram

A class diagram describes the structure of a system by showing classes, attributes, operations, and relationships. A class represents a set of objects with common properties. Attributes and operations are included within classes. Relationships between classes such as associations, generalizations, and dependencies are also shown graphically. The class diagram provides an overview of the system design and structure.

uml class diagramclass diagrams
Uml deployment diagram
Uml deployment diagramUml deployment diagram
Uml deployment diagram

UML deployment diagrams show the physical deployment of software components across hardware infrastructure. They depict the hardware elements like processors and devices, the software installed on each processor, and how the components connect. Deployment diagrams are created during system implementation to layout the physical architecture and are useful for embedded, client-server, and distributed systems to distinguish interfaces from data and host multiple software versions across servers.

Unit Test Procedures
 Perform after source code has been generated.
 A review of design information provides guidance for
establishing test cases. Each test case should be coupled
with a set of expected results.
Unit Test Procedures
Unit Test Environment
Integration testing
 Integration testing is a systematic technique for constructing the
program structure while at the same time conducting tests to
uncover errors associated with interfacing.
 The objective is to take unit tested components and build a
program structure that has been dictated by design.
Top down integration

Recommended for you

Presentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life CyclePresentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life Cycle

The document defines a bug as abnormal software behavior and discusses the bug lifecycle. It states bugs go through different states including new, open, assigned, test, verified, deferred, reopened, rejected, and closed. The states are part of a standardized process to ensure bugs are addressed and closed. Testers report bugs to programmers using problem report forms to fully explain how to reproduce the problem with a minimum number of steps so it can be understood and fixed.

testtestingquality
System testing
System testingSystem testing
System testing

System testing evaluates a complete integrated system to determine if it meets specified requirements. It tests both functional and non-functional requirements. Functional requirements include business rules, transactions, authentication, and external interfaces. Non-functional requirements include performance, reliability, security, and usability. There are different types of system testing, including black box testing which tests functionality without knowledge of internal structure, white box testing which tests internal structures, and gray box testing which is a combination. Input, installation, graphical user interface, and regression testing are examples of different types of system testing.

csesystem testingsystem analysis
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies

This ppt covers the following A strategic approach to testing Test strategies for conventional software Test strategies for object-oriented software Validation testing System testing The art of debugging

software engineeringsoftware testing
Regression Testing
 Each time a new module is added as part of integration
testing
 New data flow paths are established
 New I/O may occur
 New control logic is invoked
 Due to these changes, may cause problems with
functions that previously worked flawlessly.
 Regression testing is the re-execution of some subset of
tests that have already been conducted to ensure that
changes have not propagated unintended side effects.
Validation Testing
 Validation testing succeeds when software functions in a
manner that can be reasonably expected by the
customer.
 Like all other testing steps, validation tries to uncover
errors, but the focus is at the requirements level— on
things that will be immediately apparent to the end-user.
 Reasonable expectations are defined in the Software
Requirements Specification— a document that describes
all user-visible attributes of the software.
 Validation testing comprises of
 Validation Test criteria
 Configuration review
 Alpha & Beta Testing
Validation Test criteria
 It is achieved through a series of tests that demonstrate agreement
with requirements.
 Both the plan and procedure are designed to ensure that
 all functional requirements are satisfied,
 all behavioral characteristics are achieved,
 all performance requirements are attained,
 documentation is correct,
 other requirements are met.
Configuration Review
 The intent of the review is to ensure that
all elements of the software configuration
have been properly developed, are
cataloged, and have the necessary detail
to the support phase of the software life
cycle.
 The configuration review, sometimes
called an audit.

Recommended for you

Types of software testing
Types of software testingTypes of software testing
Types of software testing

1. The document discusses different types of software testing including manual testing, automation testing, black-box testing, white-box testing, grey-box testing, and different levels of testing like unit testing, integration testing, system testing, regression testing, and acceptance testing. 2. It provides details on when each type of testing is used and their objectives such as finding defects, ensuring quality, and meeting requirements. 3. The key types of testing covered include functional testing, which has sub-types like unit, integration, system, regression, and acceptance testing, and non-functional testing.

software testing typesblack box testingwhite box testing
Software testing
Software testingSoftware testing
Software testing

Software testing involves checking if actual results match expected results to ensure a system is defect-free. It is important because software bugs can be expensive or dangerous, as demonstrated by examples where software failures caused monetary losses, human injuries or deaths. There are different types of testing like functional, non-functional, and maintenance testing, as well as different testing strategies like black box, white box, unit, integration, system, and acceptance testing. Test cases are documents used to verify requirements through test data, preconditions, expected results, and post conditions for a specific test scenario.

software testing
Component Based Software Engineering
Component Based Software EngineeringComponent Based Software Engineering
Component Based Software Engineering

Component-based software engineering (CBSE) is a process that emphasizes designing and building computer systems using reusable software components. It focuses on integrating existing components rather than developing everything from scratch. A key benefit of CBSE is reducing development time and costs by leveraging reusable components. The CBSE process involves requirements specification, component analysis, system design using existing components, development and integration of components, and system validation. CBSE aims to increase quality, productivity, and shorten development time by facilitating reuse of well-tested components.

Alpha and Beta Testing
 When custom software is built for one customer,
a series of acceptance tests are conducted to
enable the customer to validate all requirements.
 Conducted by the end-user rather than software
engineers, an acceptance test can range from
an informal "test drive" to a planned and
systematically executed series of tests.
 Most software product builders use a process
called alpha and beta testing to uncover errors
that only the end-user seems able to find.
Alpha testing
 The alpha test is conducted at the
developer's site by a customer.
 The software is used in a natural setting
with the developer "looking over the
shoulder" of the user and recording errors
and usage problems.
 Alpha tests are conducted in a controlled
environment.
Beta testing
 The beta test is conducted at one or more customer sites
by the end-user of the software.
 beta test is a "live" application of the software in an
environment that cannot be controlled by the developer.
 The customer records all problems (real or imagined)
that are encountered during beta testing and reports
these to the developer at regular intervals.
 As a result of problems reported during beta tests,
software engineers make modifications and then prepare
for release of the software product to the entire customer
base.

More Related Content

What's hot

3.software testing
3.software testing3.software testing
3.software testing
Deepak Sharma
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
Sudarsun Santhiappan
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-concepts
medsherb
 
UNIT TESTING PPT
UNIT TESTING PPTUNIT TESTING PPT
UNIT TESTING PPT
suhasreddy1
 
Test Levels & Techniques
Test Levels & TechniquesTest Levels & Techniques
Test Levels & Techniques
Dhanasekaran Nagarajan
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
Testbytes
 
Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101
QA Hannah
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
sabin kafle
 
state modeling In UML
state modeling In UMLstate modeling In UML
state modeling In UML
Kumar
 
Unit testing
Unit testing Unit testing
Unit testing
Mani Kanth
 
Uml class Diagram
Uml class DiagramUml class Diagram
Uml class Diagram
Satyamevjayte Haxor
 
Uml deployment diagram
Uml deployment diagramUml deployment diagram
Uml deployment diagram
Asraa Batool
 
Presentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life CyclePresentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life Cycle
Rajon
 
System testing
System testingSystem testing
System testing
Sifat Hossain
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
SHREEHARI WADAWADAGI
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
Prachi Sasankar
 
Software testing
Software testingSoftware testing
Software testing
ssusere50573
 
Component Based Software Engineering
Component Based Software EngineeringComponent Based Software Engineering
Component Based Software Engineering
SatishDabhi1
 
Black box and white box testing
Black box and white box testingBlack box and white box testing
Black box and white box testing
AWADHESH PRATAP SINGH UNIVERSITY, REWA (M.P.)
 
Functional modeling
Functional modelingFunctional modeling
Functional modeling
Preeti Mishra
 

What's hot (20)

3.software testing
3.software testing3.software testing
3.software testing
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-concepts
 
UNIT TESTING PPT
UNIT TESTING PPTUNIT TESTING PPT
UNIT TESTING PPT
 
Test Levels & Techniques
Test Levels & TechniquesTest Levels & Techniques
Test Levels & Techniques
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
 
Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 
state modeling In UML
state modeling In UMLstate modeling In UML
state modeling In UML
 
Unit testing
Unit testing Unit testing
Unit testing
 
Uml class Diagram
Uml class DiagramUml class Diagram
Uml class Diagram
 
Uml deployment diagram
Uml deployment diagramUml deployment diagram
Uml deployment diagram
 
Presentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life CyclePresentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life Cycle
 
System testing
System testingSystem testing
System testing
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Component Based Software Engineering
Component Based Software EngineeringComponent Based Software Engineering
Component Based Software Engineering
 
Black box and white box testing
Black box and white box testingBlack box and white box testing
Black box and white box testing
 
Functional modeling
Functional modelingFunctional modeling
Functional modeling
 

Similar to Testing strategies in Software Engineering

Software testing
Software testingSoftware testing
software testing strategies
software testing strategiessoftware testing strategies
software testing strategies
Hemanth Gajula
 
Chapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.pptChapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.ppt
VijayaPratapReddyM
 
Validation & verification software engineering
Validation & verification software engineeringValidation & verification software engineering
Validation & verification software engineering
Sweta Kumari Barnwal
 
Manual testing
Manual testingManual testing
Manual testing
Vivek V
 
Manual testing
Manual testingManual testing
Manual testing
vigneshasromio
 
Software testing
Software testingSoftware testing
Software testing
Sengu Msc
 
Software testing
Software testingSoftware testing
Software testing
Sengu Msc
 
SDET UNIT 2.pptx
SDET UNIT 2.pptxSDET UNIT 2.pptx
SDET UNIT 2.pptx
Dr. Pallawi Bulakh
 
Software verification & validation
Software verification & validationSoftware verification & validation
Software verification & validation
Hamza Khan
 
Software testing sengu
Software testing  senguSoftware testing  sengu
Software testing sengu
Sengu Msc
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
FAIZALSAIYED
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
Webtech Learning
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
Davis Thomas
 
Mca se chapter_07_software_validation
Mca se chapter_07_software_validationMca se chapter_07_software_validation
Mca se chapter_07_software_validation
Aman Adhikari
 
Software Testing
Software TestingSoftware Testing
Software Testing
Sengu Msc
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
Rohit Singh
 
Sftwre engg.testng
Sftwre engg.testngSftwre engg.testng
Sftwre engg.testng
kanika20071990
 
Software test proposal
Software test proposalSoftware test proposal
Software test proposal
ManikandanRamanujam
 
Software testing2
Software testing2Software testing2
Software testing2
suneeth kumar
 

Similar to Testing strategies in Software Engineering (20)

Software testing
Software testingSoftware testing
Software testing
 
software testing strategies
software testing strategiessoftware testing strategies
software testing strategies
 
Chapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.pptChapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.ppt
 
Validation & verification software engineering
Validation & verification software engineeringValidation & verification software engineering
Validation & verification software engineering
 
Manual testing
Manual testingManual testing
Manual testing
 
Manual testing
Manual testingManual testing
Manual testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
SDET UNIT 2.pptx
SDET UNIT 2.pptxSDET UNIT 2.pptx
SDET UNIT 2.pptx
 
Software verification & validation
Software verification & validationSoftware verification & validation
Software verification & validation
 
Software testing sengu
Software testing  senguSoftware testing  sengu
Software testing sengu
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
 
Mca se chapter_07_software_validation
Mca se chapter_07_software_validationMca se chapter_07_software_validation
Mca se chapter_07_software_validation
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Sftwre engg.testng
Sftwre engg.testngSftwre engg.testng
Sftwre engg.testng
 
Software test proposal
Software test proposalSoftware test proposal
Software test proposal
 
Software testing2
Software testing2Software testing2
Software testing2
 

More from MuhammadTalha436

Analysis modeling in software engineering
Analysis modeling in software engineeringAnalysis modeling in software engineering
Analysis modeling in software engineering
MuhammadTalha436
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineering
MuhammadTalha436
 
Software Process Model in software engineering
Software Process Model in software engineeringSoftware Process Model in software engineering
Software Process Model in software engineering
MuhammadTalha436
 
Software engineering interview questions
Software engineering interview questionsSoftware engineering interview questions
Software engineering interview questions
MuhammadTalha436
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)
MuhammadTalha436
 
Prototype model (software engineering)
Prototype model (software engineering)  Prototype model (software engineering)
Prototype model (software engineering)
MuhammadTalha436
 
Incremental model (software engineering)
Incremental model (software engineering)Incremental model (software engineering)
Incremental model (software engineering)
MuhammadTalha436
 
V model (software engineering)
V model (software engineering)V model (software engineering)
V model (software engineering)
MuhammadTalha436
 
Waterfall Model (Software Engineering)
Waterfall Model (Software Engineering)  Waterfall Model (Software Engineering)
Waterfall Model (Software Engineering)
MuhammadTalha436
 
Requirements Engineering
Requirements EngineeringRequirements Engineering
Requirements Engineering
MuhammadTalha436
 
Software Quality Assurance in software engineering
Software Quality Assurance in software engineeringSoftware Quality Assurance in software engineering
Software Quality Assurance in software engineering
MuhammadTalha436
 
A Risk Analysis and Management in Software Engineering
A Risk Analysis and Management in Software Engineering A Risk Analysis and Management in Software Engineering
A Risk Analysis and Management in Software Engineering
MuhammadTalha436
 
Project Management Complete Concept
Project Management Complete Concept Project Management Complete Concept
Project Management Complete Concept
MuhammadTalha436
 
Introduction of Software Engineering
Introduction of Software EngineeringIntroduction of Software Engineering
Introduction of Software Engineering
MuhammadTalha436
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
MuhammadTalha436
 
Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019
MuhammadTalha436
 
Software Engineering Past Papers Notes
Software Engineering Past Papers Notes Software Engineering Past Papers Notes
Software Engineering Past Papers Notes
MuhammadTalha436
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
MuhammadTalha436
 
Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)
MuhammadTalha436
 
Object Oriented Programming Short Notes for Preperation of Exams
Object Oriented Programming Short Notes for Preperation of ExamsObject Oriented Programming Short Notes for Preperation of Exams
Object Oriented Programming Short Notes for Preperation of Exams
MuhammadTalha436
 

More from MuhammadTalha436 (20)

Analysis modeling in software engineering
Analysis modeling in software engineeringAnalysis modeling in software engineering
Analysis modeling in software engineering
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineering
 
Software Process Model in software engineering
Software Process Model in software engineeringSoftware Process Model in software engineering
Software Process Model in software engineering
 
Software engineering interview questions
Software engineering interview questionsSoftware engineering interview questions
Software engineering interview questions
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)
 
Prototype model (software engineering)
Prototype model (software engineering)  Prototype model (software engineering)
Prototype model (software engineering)
 
Incremental model (software engineering)
Incremental model (software engineering)Incremental model (software engineering)
Incremental model (software engineering)
 
V model (software engineering)
V model (software engineering)V model (software engineering)
V model (software engineering)
 
Waterfall Model (Software Engineering)
Waterfall Model (Software Engineering)  Waterfall Model (Software Engineering)
Waterfall Model (Software Engineering)
 
Requirements Engineering
Requirements EngineeringRequirements Engineering
Requirements Engineering
 
Software Quality Assurance in software engineering
Software Quality Assurance in software engineeringSoftware Quality Assurance in software engineering
Software Quality Assurance in software engineering
 
A Risk Analysis and Management in Software Engineering
A Risk Analysis and Management in Software Engineering A Risk Analysis and Management in Software Engineering
A Risk Analysis and Management in Software Engineering
 
Project Management Complete Concept
Project Management Complete Concept Project Management Complete Concept
Project Management Complete Concept
 
Introduction of Software Engineering
Introduction of Software EngineeringIntroduction of Software Engineering
Introduction of Software Engineering
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
 
Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019
 
Software Engineering Past Papers Notes
Software Engineering Past Papers Notes Software Engineering Past Papers Notes
Software Engineering Past Papers Notes
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
 
Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)
 
Object Oriented Programming Short Notes for Preperation of Exams
Object Oriented Programming Short Notes for Preperation of ExamsObject Oriented Programming Short Notes for Preperation of Exams
Object Oriented Programming Short Notes for Preperation of Exams
 

Recently uploaded

How to Install Theme in the Odoo 17 ERP
How to  Install Theme in the Odoo 17 ERPHow to  Install Theme in the Odoo 17 ERP
How to Install Theme in the Odoo 17 ERP
Celine George
 
NLC English 7 Consolidation Lesson plan for teacher
NLC English 7 Consolidation Lesson plan for teacherNLC English 7 Consolidation Lesson plan for teacher
NLC English 7 Consolidation Lesson plan for teacher
AngelicaLubrica
 
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 12 - GLOBAL SUCCESS - FORM MỚI 2025 - HK1 (C...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 12 - GLOBAL SUCCESS - FORM MỚI 2025 - HK1 (C...CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 12 - GLOBAL SUCCESS - FORM MỚI 2025 - HK1 (C...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 12 - GLOBAL SUCCESS - FORM MỚI 2025 - HK1 (C...
Nguyen Thanh Tu Collection
 
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Murugan Solaiyappan
 
How to Create Sequence Numbers in Odoo 17
How to Create Sequence Numbers in Odoo 17How to Create Sequence Numbers in Odoo 17
How to Create Sequence Numbers in Odoo 17
Celine George
 
How to Store Data on the Odoo 17 Website
How to Store Data on the Odoo 17 WebsiteHow to Store Data on the Odoo 17 Website
How to Store Data on the Odoo 17 Website
Celine George
 
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISINGSYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
Dr Vijay Vishwakarma
 
The basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptxThe basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptx
heathfieldcps1
 
Final_SD_Session3_Ferriols, Ador Dionisio, Fajardo.pptx
Final_SD_Session3_Ferriols, Ador Dionisio, Fajardo.pptxFinal_SD_Session3_Ferriols, Ador Dionisio, Fajardo.pptx
Final_SD_Session3_Ferriols, Ador Dionisio, Fajardo.pptx
shimeathdelrosario1
 
NAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource BookNAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource Book
lakitawilson
 
matatag curriculum education for Kindergarten
matatag curriculum education for Kindergartenmatatag curriculum education for Kindergarten
matatag curriculum education for Kindergarten
SarahAlie1
 
The basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptxThe basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptx
heathfieldcps1
 
(T.L.E.) Agriculture: Essentials of Gardening
(T.L.E.) Agriculture: Essentials of Gardening(T.L.E.) Agriculture: Essentials of Gardening
(T.L.E.) Agriculture: Essentials of Gardening
MJDuyan
 
How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17
Celine George
 
Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...
Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...
Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...
MysoreMuleSoftMeetup
 
Book Allied Health Sciences kmu MCQs.docx
Book Allied Health Sciences kmu MCQs.docxBook Allied Health Sciences kmu MCQs.docx
Book Allied Health Sciences kmu MCQs.docx
drtech3715
 
Delegation Inheritance in Odoo 17 and Its Use Cases
Delegation Inheritance in Odoo 17 and Its Use CasesDelegation Inheritance in Odoo 17 and Its Use Cases
Delegation Inheritance in Odoo 17 and Its Use Cases
Celine George
 
AI_in_HR_Presentation Part 1 2024 0703.pdf
AI_in_HR_Presentation Part 1 2024 0703.pdfAI_in_HR_Presentation Part 1 2024 0703.pdf
AI_in_HR_Presentation Part 1 2024 0703.pdf
SrimanigandanMadurai
 
Principles of Roods Approach!!!!!!!.pptx
Principles of Roods Approach!!!!!!!.pptxPrinciples of Roods Approach!!!!!!!.pptx
Principles of Roods Approach!!!!!!!.pptx
ibtesaam huma
 
L1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 interventionL1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 intervention
RHODAJANEAURESTILA
 

Recently uploaded (20)

How to Install Theme in the Odoo 17 ERP
How to  Install Theme in the Odoo 17 ERPHow to  Install Theme in the Odoo 17 ERP
How to Install Theme in the Odoo 17 ERP
 
NLC English 7 Consolidation Lesson plan for teacher
NLC English 7 Consolidation Lesson plan for teacherNLC English 7 Consolidation Lesson plan for teacher
NLC English 7 Consolidation Lesson plan for teacher
 
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 12 - GLOBAL SUCCESS - FORM MỚI 2025 - HK1 (C...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 12 - GLOBAL SUCCESS - FORM MỚI 2025 - HK1 (C...CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 12 - GLOBAL SUCCESS - FORM MỚI 2025 - HK1 (C...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 12 - GLOBAL SUCCESS - FORM MỚI 2025 - HK1 (C...
 
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
 
How to Create Sequence Numbers in Odoo 17
How to Create Sequence Numbers in Odoo 17How to Create Sequence Numbers in Odoo 17
How to Create Sequence Numbers in Odoo 17
 
How to Store Data on the Odoo 17 Website
How to Store Data on the Odoo 17 WebsiteHow to Store Data on the Odoo 17 Website
How to Store Data on the Odoo 17 Website
 
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISINGSYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
 
The basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptxThe basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptx
 
Final_SD_Session3_Ferriols, Ador Dionisio, Fajardo.pptx
Final_SD_Session3_Ferriols, Ador Dionisio, Fajardo.pptxFinal_SD_Session3_Ferriols, Ador Dionisio, Fajardo.pptx
Final_SD_Session3_Ferriols, Ador Dionisio, Fajardo.pptx
 
NAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource BookNAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource Book
 
matatag curriculum education for Kindergarten
matatag curriculum education for Kindergartenmatatag curriculum education for Kindergarten
matatag curriculum education for Kindergarten
 
The basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptxThe basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptx
 
(T.L.E.) Agriculture: Essentials of Gardening
(T.L.E.) Agriculture: Essentials of Gardening(T.L.E.) Agriculture: Essentials of Gardening
(T.L.E.) Agriculture: Essentials of Gardening
 
How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17
 
Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...
Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...
Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...
 
Book Allied Health Sciences kmu MCQs.docx
Book Allied Health Sciences kmu MCQs.docxBook Allied Health Sciences kmu MCQs.docx
Book Allied Health Sciences kmu MCQs.docx
 
Delegation Inheritance in Odoo 17 and Its Use Cases
Delegation Inheritance in Odoo 17 and Its Use CasesDelegation Inheritance in Odoo 17 and Its Use Cases
Delegation Inheritance in Odoo 17 and Its Use Cases
 
AI_in_HR_Presentation Part 1 2024 0703.pdf
AI_in_HR_Presentation Part 1 2024 0703.pdfAI_in_HR_Presentation Part 1 2024 0703.pdf
AI_in_HR_Presentation Part 1 2024 0703.pdf
 
Principles of Roods Approach!!!!!!!.pptx
Principles of Roods Approach!!!!!!!.pptxPrinciples of Roods Approach!!!!!!!.pptx
Principles of Roods Approach!!!!!!!.pptx
 
L1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 interventionL1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 intervention
 

Testing strategies in Software Engineering

  • 1. Chapter : Testing Strategies
  • 2. Strategic approach to software testing  Generic characteristics of strategic software testing:  To perform effective testing, a software team should conduct effective formal technical reviews.  Testing begins at the component level and works "outward" toward the integration.  Different testing techniques are appropriate at different points.  Testing is conducted by the developer of the software and (for large projects) an independent test group.  Testing and debugging are different activities, but debugging must be accommodated in any testing strategy.
  • 3. Verification and Validation  Testing is one element of a broader topic that is often referred to as verification and validation (V&V).  Verification refers to the set of activities that ensure that software correctly implements a specific function.  Validation refers to a different set of activities that ensure that the software that has been built is traceable to customer requirements.  State another way:  Verification: "Are we building the product right?"  Validation: "Are we building the right product?“  The definition of V&V encompasses many of the activities that are similar to software quality assurance (SQA).
  • 4.  V&V encompasses a wide array of SQA activities that include  Formal technical reviews,  quality and configuration audits,  performance monitoring,  simulation,  feasibility study,  documentation review,  database review,  algorithm analysis,  development testing,  qualification testing, and installation testing  Testing does provide the last bastion from which quality can be assessed and, more pragmatically, errors can be uncovered.
  • 5. Software Testing Strategy for conventional software architecture
  • 6.  A Software process & strategy for software testing may also be viewed in the context of the spiral.  Unit testing begins at the vortex of the spiral and concentrates on each unit (i.e., component) of the software.  Testing progresses by moving outward along the spiral to integration testing, where the focus is on design and the construction.  Another turn outward on the spiral, we encounter validation testing, where requirements established as part of software requirements analysis are validated against the software.  Finally, we arrive at system testing, where the software and other system elements are tested as a whole.
  • 8.  Initially, tests focus on each component individually, ensuring that it functions properly as a unit.  Unit testing makes heavy use of white-box testing techniques.  Now, validation testing provides final assurance that software meets all functional, behavioral, and performance requirements.  Black-box testing techniques are used exclusively during validation.  Once validated, must be combined with other system elements (e.g., hardware, people, databases).  System testing verifies that all elements mesh properly and that overall system function / performance is achieved.
  • 9. Criteria for Completion of Testing  There is no definitive answer to state that “we have done with testing”.  One response to the question is: "You're never done testing, the burden simply shifts from you (the software engineer) to your customer." Every time the customer/ user executes a computer program, the program is being tested.  Another response is: "You're done testing when you run out of time (deadline to deliver product to customer) or you run out of money (spend so much money on testing).
  • 10. Unit testing strategies for conventional software  Focuses verification effort on the smallest unit of software design – component or module.  Using the component-level design description as a guide  important control paths are tested to uncover errors within the boundary of the module.  Unit test is white-box oriented, and the step can be conducted in parallel for multiple components.  Unit test consists of  Unit Test Considerations  Unit Test Procedures
  • 12. Errors are commonly found during unit testing  More common errors in computation are  misunderstood or incorrect arithmetic precedence  mixed mode operations,  incorrect initialization,  precision inaccuracy,  incorrect symbolic representation of an expression.  Comparison and control flow are closely coupled to one another  Comparison of different data types,  Incorrect logical operators or precedence,  Incorrect comparison of variables  Improper or nonexistent loop termination,  Failure to exit when divergent iteration is encountered  improperly modified loop variables.
  • 13. Unit Test Procedures  Perform after source code has been generated.  A review of design information provides guidance for establishing test cases. Each test case should be coupled with a set of expected results.
  • 14. Unit Test Procedures Unit Test Environment
  • 15. Integration testing  Integration testing is a systematic technique for constructing the program structure while at the same time conducting tests to uncover errors associated with interfacing.  The objective is to take unit tested components and build a program structure that has been dictated by design.
  • 17. Regression Testing  Each time a new module is added as part of integration testing  New data flow paths are established  New I/O may occur  New control logic is invoked  Due to these changes, may cause problems with functions that previously worked flawlessly.  Regression testing is the re-execution of some subset of tests that have already been conducted to ensure that changes have not propagated unintended side effects.
  • 18. Validation Testing  Validation testing succeeds when software functions in a manner that can be reasonably expected by the customer.  Like all other testing steps, validation tries to uncover errors, but the focus is at the requirements level— on things that will be immediately apparent to the end-user.  Reasonable expectations are defined in the Software Requirements Specification— a document that describes all user-visible attributes of the software.  Validation testing comprises of  Validation Test criteria  Configuration review  Alpha & Beta Testing
  • 19. Validation Test criteria  It is achieved through a series of tests that demonstrate agreement with requirements.  Both the plan and procedure are designed to ensure that  all functional requirements are satisfied,  all behavioral characteristics are achieved,  all performance requirements are attained,  documentation is correct,  other requirements are met.
  • 20. Configuration Review  The intent of the review is to ensure that all elements of the software configuration have been properly developed, are cataloged, and have the necessary detail to the support phase of the software life cycle.  The configuration review, sometimes called an audit.
  • 21. Alpha and Beta Testing  When custom software is built for one customer, a series of acceptance tests are conducted to enable the customer to validate all requirements.  Conducted by the end-user rather than software engineers, an acceptance test can range from an informal "test drive" to a planned and systematically executed series of tests.  Most software product builders use a process called alpha and beta testing to uncover errors that only the end-user seems able to find.
  • 22. Alpha testing  The alpha test is conducted at the developer's site by a customer.  The software is used in a natural setting with the developer "looking over the shoulder" of the user and recording errors and usage problems.  Alpha tests are conducted in a controlled environment.
  • 23. Beta testing  The beta test is conducted at one or more customer sites by the end-user of the software.  beta test is a "live" application of the software in an environment that cannot be controlled by the developer.  The customer records all problems (real or imagined) that are encountered during beta testing and reports these to the developer at regular intervals.  As a result of problems reported during beta tests, software engineers make modifications and then prepare for release of the software product to the entire customer base.