SlideShare una empresa de Scribd logo
1 de 23
SOFTWARE ENGINEERING
UNIT-4
ABHIMANYU MISHRA
ASSISTANT PROF.(CSE)
JETGI
24/12/16 1Abhimanyu Mishra(CSE) JETGI
 Testing objectives.
 Unit testing.
 Integration testing.
 Acceptance testing.
 Regression testing.
 Testing for performance.
 Top down & bottom up strategies: Test driver and Test stub.
 Test data suit preparation.
 Apha & Beta testing of products.
 Static testing Strategies: Formal Technical Reviews, walkthrough.
 Compliance with design and coding standards.
CONTENTS
24/12/16 2Abhimanyu Mishra(CSE) JETGI
Software testing is the process of executing a program with the intension of finding
errors in the code. It is a process of evolution of a system or its parts by manual or
automatic means to verify that it is satisfying specified requirements or not.
 Generally no system design is ever perfect due to communication problem
between user & developer, time constrains, or conceptual mistake by developers.
 The purpose of system testing is to check and find out these errors or faults as
early as possible so losses due to it can be saved.
 Testing is the fundamental of software success.
 System testing makes a logical assumption that if all the parts of the system are
working correctly then system goal will be successfully achieved.
 Testing is not a distinct phase in system development life cycle but should be
applicable throughout all phases.
TESTING OBJECTIVES :
24/12/16 3Abhimanyu Mishra(CSE) JETGI
OBJECTIVE OF SOFTWARE TESTING:
i. Software quality improvement- the computer and the software are mainly used for
complex and critical applications and a bug or fault in software causes severe losses.
ii. Verification & Validation- The second main objective of software is to verify the
system and checking its validation. Verification means to test that we are building
the product in right way.
iii. Software reliability estimation- software reliability has important relationship with
many aspects of software development. Its objective is to discover the residual
designing errors before delivery to the customer
24/12/16 4Abhimanyu Mishra(CSE) JETGI
24/12/16 5Abhimanyu Mishra(CSE) JETGI
Softwa
re
Testers
Reliabil
ity
analysi
s
Designe
r
Test inputs Test data
Test outputs
Continue/ change
procedure
Debug system
Evaluate effectiveness of
fixes
Fig- Role of reliability in software testing
24/12/16 6Abhimanyu Mishra(CSE) JETGI
VARIOUS TYPES OF TESTING:
Acceptance
testing
System testing
Integration
testing
Unit testing
Client Needs
Requirements
Design
code
Unit testing focuses verification effort on the smallest unit of software
design the software component or module.
Using the component-level design description as a guide, important
control paths are tested to uncovered errors within the boundary of the
module.
In unit testing individual components are tested to ensure that they are
working properly in the same manner as required.
It is the lowest level of testing of application under test software meet the
requirements.
The main reason for doing unit testing is that:
•The size of single module is small enough that can locate error very easily.
•Due to small size it can be tested in demonstrably in exhaustive fashion.
Unit Testing:
24/12/16 7Abhimanyu Mishra(CSE) JETGI
24/12/16 8Abhimanyu Mishra(CSE) JETGI
M1
M2
M3
M4
M5
M7 M6
Unit testing
INTEGRATION TESTING:
24/12/16 9Abhimanyu Mishra(CSE) JETGI
 Once individuals program component have been tested, they must be integrated
to create a partial or complete system.
 Integrated test should develop during system specification, and this integration
testing should begin as soon as usable versions of some of the system
component are available.
 The primary objective of integration testing is to check the module interface i.e.
way of interaction of module, is not having any kind of errors.
The main integration technique are-
i. Top down integration testing
ii. Bottom up integration testing.
24/12/16 10Abhimanyu Mishra(CSE) JETGI
Top down integration testing- In top down integration testing, the top level usually
one controlling component is tested. Then all components called by tested
component are combined in the same way and tested as a large unit. This process
continues until all components are integrated and then whole system have been
completely tested.
Advantages of top down testing:
 Design errors are detected as early as possible, saving development time and costs
because corrections in the module design can be made before their
implementation.
 The characteristics of a software system are evident from the start, which enables
a simple test of the development state and the acceptance by the user.
 The software system can be tested thoroughly from the start with test cases
without providing test environments.
Disadvantages of top down testing:
 Strict top down testing proves extremely difficult because designing usable
surrogate objects can prove very complicated, especially for complex operation.
 Errors in lower hierarchy levels are hard to localize.
TOP DOWN TESTING:
24/12/16 11Abhimanyu Mishra(CSE) JETGI
BOTTOM-UP INTEGRATION TESTING:
It is very popular approach of merging the components to test a larger system. In
this method each subsystem at the lower level of system hierarchy is tested
individually first. Then the next component who calls the previously tested ones to
be tested.
Advantages of Bottom-Up integrated testing-
 The bottom-up test method is solid & proven. The objects to be tested are
known in full detail. It is often simpler to define relevant test cases and test
data.
 The bottom- up approach is psychologically more satisfying because the tester
can be certain that the foundations for the test objects have been tested in full
detailed.
Disadvantages of Bottom-up integrated testing-
 The characteristics of the finished product are only known after the completion
of all implementation and testing, which means that design error in the upper
level are detected very late
 Testing individual levels also inflicts high costs for providing a suitable test
environment.
24/12/16 12Abhimanyu Mishra(CSE) JETGI
ACCEPTANCE TESTING:
 The purpose of acceptance testing is to confirm that the system meets its
business requirements and to provide confidence that the system is working
properly before it is “hand over” to the customer.
 Acceptance testing is performed by nominated user representatives under
guidance and supervision of testing team and developer.
 During acceptance testing it is very important that there should be an
independent observer of testing process specially when the customer are not
having too much IT knowledge.
 The main way to evaluate the system for acceptance is bench mark test. In
this customer prepare a set of a test cases that represents typical condition
under which the system will operate when actually installed. The customer
evaluate the system performance for each test case.
STRESS TESTING:
 In software testing, stress testing refers to tests that determine the robustness
of software by testing beyond the limits of normal operation. Stress testing is
particularly important for “mission critical” software, but is used for all types
of software.
 Stress tests commonly put a greater emphasis on robustness, availability, and
error handling under a heavy load, then on what would be considered correct
behavior under normal circumstances.
 Stress testing typically involves the independent test team performing the
following testing tasks using the following technique:
i. Test planning
ii. Test reuse
iii. Test design
24/12/16 13Abhimanyu Mishra(CSE) JETGI
24/12/16 14Abhimanyu Mishra(CSE) JETGI
REGRESSION TESTING:
Testing is used to find out errors in the software due to which it is not working properly. When
these errors are found out then different methods are used to correct these errors. But while,
removing process of current errors, some new faults or errors may be generated. Regression
testing is used to identified these new errors or faults.
Regression testing can be applied in development as well as maintenance phase of software
life cycle. In development phase regression testing is done after correcting the errors found
during the testing of software.
A regression test suit contains three different classes of test cases:
 A representative sample of tests that will exercise all software functions.
 Additional tests that focuses on software functions that are likely to be affected by the
change.
 Test that focuses on the software components that have been changed.
TEST DRIVER & TEST STUB:
24/12/16 15Abhimanyu Mishra(CSE) JETGI
“A test driver is a software module or application used to invoke a test and provide
test data, control and monitor execution and execution and reports test outcomes”.
Test driver are used for testing of sub-module in the absence of main control module.
A component driver routine calls a particular component and passes test case to it.
Test stub- Test stubs are specialized implementation of elements used for testing
purpose, which are dummy of a real component. Test stubs are program or
components that have deterministic behavior and are used to interface with sub
system in order to take care of dependencies.
• Basically stubs are used in top down approach.in it the main control module is
tested in the absence of stub-module.
24/12/16 16Abhimanyu Mishra(CSE) JETGI
WHITE BOX TESTING:
White box testing is a software testing approach that examines the program
structure and derives test data from the program logic.
 In this approach, test group must have complete knowledge about the internal
structure of the software.
 White box testing is also called “structural testing”.
 Structural testing is usually applied to relatively small program units such as
subroutine or operations associated with objects.
 The white box testing is also known by name of glass box testing, clear box
testing, open-box testing.
 It is a test case design method that uses the control structure of the procedural
design to drive test cases.
24/12/16 17Abhimanyu Mishra(CSE) JETGI
Fig- White box approach
24/12/16 18Abhimanyu Mishra(CSE) JETGI
BLACK BOX APPROACH:
 In Black-box testing the tester don’t know the internal structure of module, it tests only for
input/output behavior. Black-box testing focuses on the functional requirements of the
software. It enables the software engineer to derive sets of input conditions that will fully
exercise all functional requirements for a program.
 The black box testing is also known by the name of functional testing, exterior testing,
specification testing, data- driven testing and input/output driven.
 The selection of test cases is based on the specification of the test object without
knowledge of its behavior of the test object on erroneous input data.
 In black box test on software design the tester only knows the inputs and what will be
expected outputs and don’t know how the program will arrive at those outputs.
24/12/16 Abhimanyu Mishra(CSE) JETGI 19
Advantage of Black box testing-
 The test is unbiased because the designer and tester are
independent of each other.
 Test is done from the point of view of user not the designer.
 Test cases can be design as soon as specification is
completed.
 For tester there is no need to know any programming
language.
Disadvantage of Black box testing-
 The test can be redundant if software designer has already run a test
case.
 The test cases are difficult to design.
24/12/16 20Abhimanyu Mishra(CSE) JETGI
Fig- Black box testing
24/12/16 Abhimanyu Mishra(CSE) JETGI 21
TEST DATA SUIT PREPARATION:
Testing is the process of executing a program to locate undiscovered errors. The
main aim of program testing is to identify all defects in a program. However, it
is not possible to guarantee that a program is error free.
Following activities are to be performed during testing process-
 Designing test suit
 Running test cases & checking result
 Debugging
 Error correction
24/12/16 22Abhimanyu Mishra(CSE) JETGI
FORMAL TECHNICAL REVIEW:
A formal technical review are filter or software engineering process i.e. review
are applied at various points during software development and serve to
uncover the errors and defects that can be removed. Software reviews
“purifies” the software engineering activities that we have called analysis,
design and coding.
 It is a software quality that assurance activity performed by software
engineers. A FTR is known as WALKTHROUGH or an INSPECTION.
The objective of FTR are:-
 To uncover errors in function, logic or implementation for representation of
software.
 To verify that software under review meets its requirements.
 To ensure that the software has been represented according to predefined
standards.
 To achieve software that is developed in a uniform manner.
24/12/16 23Abhimanyu Mishra(CSE) JETGI
DESIGNING & CODING STANDARDS:
Coding standards are a set of conventions that the programmer follow to
standardize their computer code to some degree and to make the overall program
easier to read and understand.
In other words coding standard as it is sometime called is about how you code so
that the code is easily readable and understandable by a human.
 Coding
 Program Robustness
 I/O Behavior
 Modules & Modular program structure
 Program Testing
 Cohesion Procedure
 Minimize coupling
 Minimize data scope where possible

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing Basics
 
Introduction to Software Project Management
Introduction to Software Project ManagementIntroduction to Software Project Management
Introduction to Software Project Management
 
The Art of Debugging.pptx
The Art of Debugging.pptxThe Art of Debugging.pptx
The Art of Debugging.pptx
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
System engineering
System engineeringSystem engineering
System engineering
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Software testing
Software testing Software testing
Software testing
 
Software process
Software processSoftware process
Software process
 
Software Engineering Unit 1
Software Engineering Unit 1Software Engineering Unit 1
Software Engineering Unit 1
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
PROTOTYPE MODEL
PROTOTYPE MODELPROTOTYPE MODEL
PROTOTYPE MODEL
 
Software Engineering unit 5
Software Engineering unit 5Software Engineering unit 5
Software Engineering unit 5
 
Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts ppt
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 

Destacado

How to Achieve and Maintain High Quality SaaS Software in the Cloud
How to Achieve and Maintain High Quality SaaS Software in the CloudHow to Achieve and Maintain High Quality SaaS Software in the Cloud
How to Achieve and Maintain High Quality SaaS Software in the CloudXBOSoft
 
Networking in cloud computing
Networking in cloud computingNetworking in cloud computing
Networking in cloud computingBarani Tharan
 
User interface design(sommerville) bangalore university
User interface design(sommerville) bangalore universityUser interface design(sommerville) bangalore university
User interface design(sommerville) bangalore universityJaisha Shankar
 
Unit 7 performing user interface design
Unit 7 performing user interface designUnit 7 performing user interface design
Unit 7 performing user interface designPreeti Mishra
 
Ch11 input output systems
Ch11 input output systemsCh11 input output systems
Ch11 input output systemsissbp
 
Os2 2
Os2 2Os2 2
Os2 2issbp
 
Class9
 Class9 Class9
Class9issbp
 
Lecture 7: Definite Clause Grammars
Lecture 7: Definite Clause GrammarsLecture 7: Definite Clause Grammars
Lecture 7: Definite Clause GrammarsCS, NcState
 
Os5 2
Os5 2Os5 2
Os5 2issbp
 
Os4 2
Os4 2Os4 2
Os4 2issbp
 
Class5
 Class5 Class5
Class5issbp
 
Os6 2
Os6 2Os6 2
Os6 2issbp
 
Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5Abhimanyu Mishra
 

Destacado (20)

Unit 5
Unit 5Unit 5
Unit 5
 
How to Achieve and Maintain High Quality SaaS Software in the Cloud
How to Achieve and Maintain High Quality SaaS Software in the CloudHow to Achieve and Maintain High Quality SaaS Software in the Cloud
How to Achieve and Maintain High Quality SaaS Software in the Cloud
 
Networking in cloud computing
Networking in cloud computingNetworking in cloud computing
Networking in cloud computing
 
User interface design(sommerville) bangalore university
User interface design(sommerville) bangalore universityUser interface design(sommerville) bangalore university
User interface design(sommerville) bangalore university
 
Slides chapter 12
Slides chapter 12Slides chapter 12
Slides chapter 12
 
Slides chapter 11
Slides chapter 11Slides chapter 11
Slides chapter 11
 
Unit 7 performing user interface design
Unit 7 performing user interface designUnit 7 performing user interface design
Unit 7 performing user interface design
 
Ch11 input output systems
Ch11 input output systemsCh11 input output systems
Ch11 input output systems
 
Os2 2
Os2 2Os2 2
Os2 2
 
Os4
Os4Os4
Os4
 
Os6
Os6Os6
Os6
 
Class9
 Class9 Class9
Class9
 
Os2
Os2Os2
Os2
 
Lecture 7: Definite Clause Grammars
Lecture 7: Definite Clause GrammarsLecture 7: Definite Clause Grammars
Lecture 7: Definite Clause Grammars
 
Os5 2
Os5 2Os5 2
Os5 2
 
Os4 2
Os4 2Os4 2
Os4 2
 
Class5
 Class5 Class5
Class5
 
Os6 2
Os6 2Os6 2
Os6 2
 
Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5
 
Design1
Design1Design1
Design1
 

Similar a Software Engineering unit 4 (20)

Different Software Testing Types and CMM Standard
Different Software Testing Types and CMM StandardDifferent Software Testing Types and CMM Standard
Different Software Testing Types and CMM Standard
 
Types
TypesTypes
Types
 
Testing type
Testing typeTesting type
Testing type
 
Software testing
Software testingSoftware testing
Software testing
 
Sftwre engg.testng
Sftwre engg.testngSftwre engg.testng
Sftwre engg.testng
 
What is Software Testing Lifecycle?
What is Software Testing Lifecycle? What is Software Testing Lifecycle?
What is Software Testing Lifecycle?
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
 
Software testing
Software testingSoftware testing
Software testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
A COMPOSITION ON SOFTWARE TESTING
A COMPOSITION ON SOFTWARE TESTINGA COMPOSITION ON SOFTWARE TESTING
A COMPOSITION ON SOFTWARE TESTING
 
What is integration testing
What is integration testingWhat is integration testing
What is integration testing
 
Software Testing.pptx
Software Testing.pptxSoftware Testing.pptx
Software Testing.pptx
 
S.t.
S.t.S.t.
S.t.
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
Session 05 - Testing Concepts
Session 05 - Testing ConceptsSession 05 - Testing Concepts
Session 05 - Testing Concepts
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software Testing
Software Testing Software Testing
Software Testing
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 

Más de Abhimanyu Mishra

Más de Abhimanyu Mishra (18)

Cd unit i
Cd unit iCd unit i
Cd unit i
 
Presentation1(JIT gnomio)
Presentation1(JIT gnomio)Presentation1(JIT gnomio)
Presentation1(JIT gnomio)
 
Sta unit 5(abimanyu)
Sta unit 5(abimanyu)Sta unit 5(abimanyu)
Sta unit 5(abimanyu)
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
 
Sta unit 4(abimanyu)
Sta unit 4(abimanyu)Sta unit 4(abimanyu)
Sta unit 4(abimanyu)
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
 
Sta unit 2(abimanyu)
Sta unit 2(abimanyu)Sta unit 2(abimanyu)
Sta unit 2(abimanyu)
 
Unit1
Unit1Unit1
Unit1
 
Daa unit 5
Daa unit 5Daa unit 5
Daa unit 5
 
Daa unit 4
Daa unit 4Daa unit 4
Daa unit 4
 
Daa unit 3
Daa unit 3Daa unit 3
Daa unit 3
 
Daa unit 2
Daa unit 2Daa unit 2
Daa unit 2
 
Daa unit 1
Daa unit 1Daa unit 1
Daa unit 1
 
Software Engineering unit 2
Software Engineering unit 2Software Engineering unit 2
Software Engineering unit 2
 
Theory of automata and formal languages Unit 4
Theory of automata and formal languages Unit 4Theory of automata and formal languages Unit 4
Theory of automata and formal languages Unit 4
 
Theory of Automata and formal languages Unit 3
Theory of Automata and formal languages Unit 3Theory of Automata and formal languages Unit 3
Theory of Automata and formal languages Unit 3
 
Theory of Automata and formal languages unit 2
Theory of Automata and formal languages unit 2Theory of Automata and formal languages unit 2
Theory of Automata and formal languages unit 2
 
Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1
 

Último

Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncssuser2ae721
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...121011101441
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxKartikeyaDwivedi3
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEroselinkalist12
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catcherssdickerson1
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 

Último (20)

Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
POWER SYSTEMS-1 Complete notes examples
POWER SYSTEMS-1 Complete notes  examplesPOWER SYSTEMS-1 Complete notes  examples
POWER SYSTEMS-1 Complete notes examples
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptx
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 

Software Engineering unit 4

  • 1. SOFTWARE ENGINEERING UNIT-4 ABHIMANYU MISHRA ASSISTANT PROF.(CSE) JETGI 24/12/16 1Abhimanyu Mishra(CSE) JETGI
  • 2.  Testing objectives.  Unit testing.  Integration testing.  Acceptance testing.  Regression testing.  Testing for performance.  Top down & bottom up strategies: Test driver and Test stub.  Test data suit preparation.  Apha & Beta testing of products.  Static testing Strategies: Formal Technical Reviews, walkthrough.  Compliance with design and coding standards. CONTENTS 24/12/16 2Abhimanyu Mishra(CSE) JETGI
  • 3. Software testing is the process of executing a program with the intension of finding errors in the code. It is a process of evolution of a system or its parts by manual or automatic means to verify that it is satisfying specified requirements or not.  Generally no system design is ever perfect due to communication problem between user & developer, time constrains, or conceptual mistake by developers.  The purpose of system testing is to check and find out these errors or faults as early as possible so losses due to it can be saved.  Testing is the fundamental of software success.  System testing makes a logical assumption that if all the parts of the system are working correctly then system goal will be successfully achieved.  Testing is not a distinct phase in system development life cycle but should be applicable throughout all phases. TESTING OBJECTIVES : 24/12/16 3Abhimanyu Mishra(CSE) JETGI
  • 4. OBJECTIVE OF SOFTWARE TESTING: i. Software quality improvement- the computer and the software are mainly used for complex and critical applications and a bug or fault in software causes severe losses. ii. Verification & Validation- The second main objective of software is to verify the system and checking its validation. Verification means to test that we are building the product in right way. iii. Software reliability estimation- software reliability has important relationship with many aspects of software development. Its objective is to discover the residual designing errors before delivery to the customer 24/12/16 4Abhimanyu Mishra(CSE) JETGI
  • 5. 24/12/16 5Abhimanyu Mishra(CSE) JETGI Softwa re Testers Reliabil ity analysi s Designe r Test inputs Test data Test outputs Continue/ change procedure Debug system Evaluate effectiveness of fixes Fig- Role of reliability in software testing
  • 6. 24/12/16 6Abhimanyu Mishra(CSE) JETGI VARIOUS TYPES OF TESTING: Acceptance testing System testing Integration testing Unit testing Client Needs Requirements Design code
  • 7. Unit testing focuses verification effort on the smallest unit of software design the software component or module. Using the component-level design description as a guide, important control paths are tested to uncovered errors within the boundary of the module. In unit testing individual components are tested to ensure that they are working properly in the same manner as required. It is the lowest level of testing of application under test software meet the requirements. The main reason for doing unit testing is that: •The size of single module is small enough that can locate error very easily. •Due to small size it can be tested in demonstrably in exhaustive fashion. Unit Testing: 24/12/16 7Abhimanyu Mishra(CSE) JETGI
  • 8. 24/12/16 8Abhimanyu Mishra(CSE) JETGI M1 M2 M3 M4 M5 M7 M6 Unit testing
  • 9. INTEGRATION TESTING: 24/12/16 9Abhimanyu Mishra(CSE) JETGI  Once individuals program component have been tested, they must be integrated to create a partial or complete system.  Integrated test should develop during system specification, and this integration testing should begin as soon as usable versions of some of the system component are available.  The primary objective of integration testing is to check the module interface i.e. way of interaction of module, is not having any kind of errors. The main integration technique are- i. Top down integration testing ii. Bottom up integration testing.
  • 10. 24/12/16 10Abhimanyu Mishra(CSE) JETGI Top down integration testing- In top down integration testing, the top level usually one controlling component is tested. Then all components called by tested component are combined in the same way and tested as a large unit. This process continues until all components are integrated and then whole system have been completely tested. Advantages of top down testing:  Design errors are detected as early as possible, saving development time and costs because corrections in the module design can be made before their implementation.  The characteristics of a software system are evident from the start, which enables a simple test of the development state and the acceptance by the user.  The software system can be tested thoroughly from the start with test cases without providing test environments. Disadvantages of top down testing:  Strict top down testing proves extremely difficult because designing usable surrogate objects can prove very complicated, especially for complex operation.  Errors in lower hierarchy levels are hard to localize. TOP DOWN TESTING:
  • 11. 24/12/16 11Abhimanyu Mishra(CSE) JETGI BOTTOM-UP INTEGRATION TESTING: It is very popular approach of merging the components to test a larger system. In this method each subsystem at the lower level of system hierarchy is tested individually first. Then the next component who calls the previously tested ones to be tested. Advantages of Bottom-Up integrated testing-  The bottom-up test method is solid & proven. The objects to be tested are known in full detail. It is often simpler to define relevant test cases and test data.  The bottom- up approach is psychologically more satisfying because the tester can be certain that the foundations for the test objects have been tested in full detailed. Disadvantages of Bottom-up integrated testing-  The characteristics of the finished product are only known after the completion of all implementation and testing, which means that design error in the upper level are detected very late  Testing individual levels also inflicts high costs for providing a suitable test environment.
  • 12. 24/12/16 12Abhimanyu Mishra(CSE) JETGI ACCEPTANCE TESTING:  The purpose of acceptance testing is to confirm that the system meets its business requirements and to provide confidence that the system is working properly before it is “hand over” to the customer.  Acceptance testing is performed by nominated user representatives under guidance and supervision of testing team and developer.  During acceptance testing it is very important that there should be an independent observer of testing process specially when the customer are not having too much IT knowledge.  The main way to evaluate the system for acceptance is bench mark test. In this customer prepare a set of a test cases that represents typical condition under which the system will operate when actually installed. The customer evaluate the system performance for each test case.
  • 13. STRESS TESTING:  In software testing, stress testing refers to tests that determine the robustness of software by testing beyond the limits of normal operation. Stress testing is particularly important for “mission critical” software, but is used for all types of software.  Stress tests commonly put a greater emphasis on robustness, availability, and error handling under a heavy load, then on what would be considered correct behavior under normal circumstances.  Stress testing typically involves the independent test team performing the following testing tasks using the following technique: i. Test planning ii. Test reuse iii. Test design 24/12/16 13Abhimanyu Mishra(CSE) JETGI
  • 14. 24/12/16 14Abhimanyu Mishra(CSE) JETGI REGRESSION TESTING: Testing is used to find out errors in the software due to which it is not working properly. When these errors are found out then different methods are used to correct these errors. But while, removing process of current errors, some new faults or errors may be generated. Regression testing is used to identified these new errors or faults. Regression testing can be applied in development as well as maintenance phase of software life cycle. In development phase regression testing is done after correcting the errors found during the testing of software. A regression test suit contains three different classes of test cases:  A representative sample of tests that will exercise all software functions.  Additional tests that focuses on software functions that are likely to be affected by the change.  Test that focuses on the software components that have been changed.
  • 15. TEST DRIVER & TEST STUB: 24/12/16 15Abhimanyu Mishra(CSE) JETGI “A test driver is a software module or application used to invoke a test and provide test data, control and monitor execution and execution and reports test outcomes”. Test driver are used for testing of sub-module in the absence of main control module. A component driver routine calls a particular component and passes test case to it. Test stub- Test stubs are specialized implementation of elements used for testing purpose, which are dummy of a real component. Test stubs are program or components that have deterministic behavior and are used to interface with sub system in order to take care of dependencies. • Basically stubs are used in top down approach.in it the main control module is tested in the absence of stub-module.
  • 16. 24/12/16 16Abhimanyu Mishra(CSE) JETGI WHITE BOX TESTING: White box testing is a software testing approach that examines the program structure and derives test data from the program logic.  In this approach, test group must have complete knowledge about the internal structure of the software.  White box testing is also called “structural testing”.  Structural testing is usually applied to relatively small program units such as subroutine or operations associated with objects.  The white box testing is also known by name of glass box testing, clear box testing, open-box testing.  It is a test case design method that uses the control structure of the procedural design to drive test cases.
  • 17. 24/12/16 17Abhimanyu Mishra(CSE) JETGI Fig- White box approach
  • 18. 24/12/16 18Abhimanyu Mishra(CSE) JETGI BLACK BOX APPROACH:  In Black-box testing the tester don’t know the internal structure of module, it tests only for input/output behavior. Black-box testing focuses on the functional requirements of the software. It enables the software engineer to derive sets of input conditions that will fully exercise all functional requirements for a program.  The black box testing is also known by the name of functional testing, exterior testing, specification testing, data- driven testing and input/output driven.  The selection of test cases is based on the specification of the test object without knowledge of its behavior of the test object on erroneous input data.  In black box test on software design the tester only knows the inputs and what will be expected outputs and don’t know how the program will arrive at those outputs.
  • 19. 24/12/16 Abhimanyu Mishra(CSE) JETGI 19 Advantage of Black box testing-  The test is unbiased because the designer and tester are independent of each other.  Test is done from the point of view of user not the designer.  Test cases can be design as soon as specification is completed.  For tester there is no need to know any programming language. Disadvantage of Black box testing-  The test can be redundant if software designer has already run a test case.  The test cases are difficult to design.
  • 20. 24/12/16 20Abhimanyu Mishra(CSE) JETGI Fig- Black box testing
  • 21. 24/12/16 Abhimanyu Mishra(CSE) JETGI 21 TEST DATA SUIT PREPARATION: Testing is the process of executing a program to locate undiscovered errors. The main aim of program testing is to identify all defects in a program. However, it is not possible to guarantee that a program is error free. Following activities are to be performed during testing process-  Designing test suit  Running test cases & checking result  Debugging  Error correction
  • 22. 24/12/16 22Abhimanyu Mishra(CSE) JETGI FORMAL TECHNICAL REVIEW: A formal technical review are filter or software engineering process i.e. review are applied at various points during software development and serve to uncover the errors and defects that can be removed. Software reviews “purifies” the software engineering activities that we have called analysis, design and coding.  It is a software quality that assurance activity performed by software engineers. A FTR is known as WALKTHROUGH or an INSPECTION. The objective of FTR are:-  To uncover errors in function, logic or implementation for representation of software.  To verify that software under review meets its requirements.  To ensure that the software has been represented according to predefined standards.  To achieve software that is developed in a uniform manner.
  • 23. 24/12/16 23Abhimanyu Mishra(CSE) JETGI DESIGNING & CODING STANDARDS: Coding standards are a set of conventions that the programmer follow to standardize their computer code to some degree and to make the overall program easier to read and understand. In other words coding standard as it is sometime called is about how you code so that the code is easily readable and understandable by a human.  Coding  Program Robustness  I/O Behavior  Modules & Modular program structure  Program Testing  Cohesion Procedure  Minimize coupling  Minimize data scope where possible