SlideShare ist ein Scribd-Unternehmen logo
1 von 76
Learn Software Testing Testing and Verification
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Software Engineering
[object Object],Build-and-Fix Write program Modify program Release
[object Object],Waterfall model Establish requirements Create  design Implement code Test system Release
[object Object],Iterative process Establish requirements Create  design Implement code Test system Release ,[object Object]
[object Object],Evolutionary Development Establish requirements Architectural  design Establish refinement scope System test Identify relationships Unit and Integration test Identify classes & objects Implementation Detailed  design Release Refinement cycle Specific methods and algorithms General structure of the system
[object Object],[object Object],[object Object],[object Object],Testing
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Testing (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Testing (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Functional Testing
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Unit Testing
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],White Box Testing
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Decision Coverage
[object Object],[object Object],[object Object],[object Object],Decision Coverage (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Condition Coverage
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Condition Coverage (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Multiple Condition Coverage
Multiple Condition Coverage (cont.) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],false false true false false true true true b == 0 a > 1 false false true false false true true true c > 1 a == 2
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Multiple Condition Coverage (cont.) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Multiple Condition Coverage (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Gray Box Testing
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Equivalence Partitioning
[object Object],[object Object],[object Object],[object Object],[object Object],Equivalence Partitioning (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Boundary Value Analysis
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Error Guessing
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Combined Strategy
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Testing Summary
[object Object],[object Object],[object Object],[object Object],[object Object],Testing  TrafficSignal
[object Object],Testing TrafficSignal (cont.) Left blank Left blank Dummy return value public class  TrafficSignal { public static final int  GREEN = 0; public static final int  YELLOW = 1; public static final int  RED = 2; private int  light; public  TrafficSignal () { } public int  light () { return  0; } public   void  change () { } }
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Testing  TrafficSignal  (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Testing  TrafficSignal  (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Testing  TrafficSignal  (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Testing  TrafficSignal  (cont.)
Testing  TrafficSignal  (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Testing  TrafficSignal  (cont.)
[object Object],[object Object],[object Object],Testing  TrafficSignal  (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],/** ** ** @ensure  result == A * B **/ @require B >= 0 Verification ,[object Object],Is this method correct?
[object Object],[object Object],[object Object],Egyptian Numbering System
[object Object],[object Object],[object Object],Deciphering the Rhind Papyrus
1210554 Egyptian Multiplication 2468 490 4936 4936 245 9872 122 19744 19744 61 631808 631808 1 315904 315904 3 157952 157952 7 78976 78976 15 39488 30 1234 1234 981 Remainder “ Doubled” Multiplier “ Halved” Multiplicand
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],/** ** ** @ensure  result == A * B **/ @require B >= 0 Egyptian Multiplication (cont.)
[object Object],[object Object],[object Object],[object Object],Program Correctness
[object Object],[object Object],[object Object],Program Correctness (cont.)
[object Object],[object Object],[object Object],[object Object],Program Correctness (cont.)
[object Object],[object Object],[object Object],Program Correctness (cont.)
[object Object],[object Object],[object Object],Constructing Preconditions
[object Object],[object Object],[object Object],[object Object],[object Object],sum = 2 * x + 1; {sum > 1} Constructing Preconditions (cont.)
[object Object],[object Object],[object Object],The Assignment Axiom
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],a = b / 2 - 1; {a < 10} The Assignment Axiom (cont.)
[object Object],[object Object],[object Object],x = x - 3; {x > 0} The Assignment Axiom (cont.)
[object Object],[object Object],[object Object],[object Object],Sequential Statements
[object Object],[object Object],[object Object],[object Object],[object Object],y = 3 * x + 1; x = y + 3; {x < 10} Sequential Statements (cont.)
[object Object],[object Object],[object Object],[object Object],y = 3 * x + 1; {y < 7} Sequential Statements (cont.)
[object Object],[object Object],y = 3 * x + 1; x = y + 3; {x < 10} Sequential Statements (cont.) y = 3 * x + 1; {y < 7} x = y + 3; {x < 10} {x < 2} y = 3 * x + 1; {y < 7} x = y + 3; {x < 10}
[object Object],[object Object],[object Object],temp = x; x = y; y = temp; {x == b && y == a} Sequential Statements (cont.)
[object Object],temp = x; x = y; y = temp; {x == b && y == a} temp = x; x = y; {x == b && temp == a} y = temp; {x == b && y == a} temp = x; {y == b && temp == a} x = y; {x == b && temp == a} y = temp; {x == b && y == a} Sequential Statements (cont.) {y == b && x == a} temp = x; {y == b && temp == a} x = y; {x == b && temp == a} y = temp; {x == b && y == a} The constructed weakest precondition is: {y == b && x == a}   Comparing this with the postcondition, we see that the code does, indeed, swap the values of  x  and  y .
[object Object],[object Object],y = 4; z = x + y; {z = 7} y = 4; z = x + y; {z == 7} y = 4; {x + y == 7} z = x + y; {z == 7} {x + 4 == 7} y = 4; {x + y == 7} z = x + y; {z == 7} {x == 3} y = 4; {x + y == 7} z = x + y; {z == 7} The constructed weakest precondition is  {x == 3} .  Sequential Statements (cont.)
[object Object],{ P } if ( B ) {   S 1 } else {   S 2 } { Q } Conditional Statements
[object Object],[object Object],[object Object],[object Object],Conditional Statements (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Conditional Statements (cont.)
[object Object],[object Object],[object Object],[object Object],Conditional Statements (cont.)
[object Object],if (x > y) { y = x - 1; } else { y = x + 1; } {y > 0} The  truecase : produces the precondition  {x – 1 > 0}  which simplifies to  {x > 1} . Backing over the  if  condition, we get  {(x > 1) && (x > y)} . y = x - 1; {y > 0} The  falsecase : produces the precondition  {x + 1 > 0}  which simplifies to  {x > -1} . Backing over the negative of the  if  condition, we get  {(x > -1) && (x <= y)} . y = x + 1; {y > 0} The disjoin of these is  {((x > 1) && (x > y)) || ((x > -1) && (x <= y))}  which serves as a precondition of the  if  structure.   Conditional Statements (cont.)
[object Object],if (n >= 5) { y = n * n; } else { y = n + 1; } {y == 36} The  truecase : produces the precondition  {n * n == 36}  which simplifies to  {n == 6 || n == -6} . Backing over the  if  condition, we get  {(n == 6 || n == -6) && (n >= 5)}  which simplifies to  {n == 6} . y = n * n; {y == 36} The  falsecase : produces the precondition  {n + 1 == 36}  which simplifies to  {n == 35} . Backing over the negtive of the  if  condition, we get  {(n == 35) && (n < 5)} . This is always false. y = n + 1; {y == 36} Thus, the constructed precondition is  {(n == 6) || false} , which simplifies to {n == 6} . Conditional Statements (cont.)
[object Object],[object Object],[object Object],if (x >= y) { max = x; } else { max = y; } Conditional Statements (cont.)
The  truecase : produces the precondition  {(x >= y && x == x) || (x < y && x == y)}   which simplifies to  {(x >= y && true) || false}  and further simplifies to  {x >= y} . Backing over the  if  condition, we get  {(x >= y) && (x >= y)}  which simplifies to  {x >= y} . max = x; {(x >= y && max == x) || (x < y && max == y)} if (x >= y) { max = x; } else { max = y; } {(x >= y && max == x) || (x < y && max == y)} Conditional Statements (cont.)
The  falsecase : produces the precondition  {(x >= y && y == x) || (x < y && y == y)}   which simplifies to  {(y == x) || (x < y && true)}  and further simplifies to  {y >= x} . Backing over the negative of the  if  condition, we get  {(y >= x) && (x < y)}  which simplifies to  {x < y} . max = y; {(x >= y && max == x) || (x < y && max == y)} if (x >= y) { max = x; } else { max = y; } {(x >= y && max == x) || (x < y && max == y)} Conditional Statements (cont.)
if (x >= y) { max = x; } else { max = y; } {(x >= y && max == x) || (x < y && max == y)} Combining the results of each pass, we get: {(x >= y) || (x < y)} Since this is always true, it means that the code segment produces the postcondition for all values of  x  and  y .  We write the precondition as simply  true . Conditional Statements (cont.)
[object Object],[object Object],[object Object],{ P } while ( G ) {  S } { Q } Logical Pretest Loops
[object Object],int i = 0; int s = 1; while (i < 10) { s = s * 2; i = i + 1; } Logical Pretest Loops (cont.) ,[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],The Reverse Execution Model
[object Object],[object Object],[object Object],The Reverse Execution Model (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],The Reverse Execution Model (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],The Reverse Execution Model (cont.)
[object Object],[object Object],Logical Pretest Loops (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],/** ** ** @ensure  result == A * B **/ @require old.B >= 0 result == A * B x == A * B Loop invariant: (x == (A*B)–(m*n)) && (n >= 0) (x == (A*B)–(m*n)) && (n >= 0) (x == (A*B)–(m*B)) && (B >= 0) (x == (A*B)–(A*B)) && (B >= 0) (0 == (A*B)–(A*B)) && (B >= 0) (0 == (old.A * old.B)–(old.A * old.B)) && (B >= 0) (0 == 0) && (old.B >= 0) (old.B >= 0) @require B >= 0 Logical Pretest Loops (cont.)
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],/** ** ** @ensure  result == N * N **/ @require true result == N * N x == N * N Loop invariant: (x == N*N–(N–m)*y–(N–m)*(N–m–1)) && (N >= m) (x == N*N–(N–m)*y–(N–m)*(N–m–1)) && (N >= m) How do we find an appropriate loop invariant? (x == N*N–(N–m)–(N–m)*(N–m–1)) && (N >= m) (0 == N*N–(N–m)–(N–m)*(N–m–1)) && (N >= m) (0 == N*N–N–N*(N–1)) && (N >= 0) (0 == (N*N–N*N) && (N >= 0) ((N < 0) && (-N >= 0)) || (!(N < 0) && (N >= 0)) (N < 0) || (N >= 0) true && (N >= 0) N >= 0 true true Logical Pretest Loops (cont.)

Weitere ähnliche Inhalte

Was ist angesagt?

5 black box and grey box testing
5   black box and grey box testing5   black box and grey box testing
5 black box and grey box testingYisal Khan
 
Black box testing or behavioral testing
Black box testing or behavioral testingBlack box testing or behavioral testing
Black box testing or behavioral testingSlideshare
 
Software Testing
Software TestingSoftware Testing
Software TestingKiran Kumar
 
Test case techniques
Test case techniquesTest case techniques
Test case techniquesPina Parmar
 
New software testing-techniques
New software testing-techniquesNew software testing-techniques
New software testing-techniquesFincy V.J
 
Black box testing
Black box testingBlack box testing
Black box testingAbdul Basit
 
Boundary and equivalnce systematic test design
Boundary and equivalnce   systematic test designBoundary and equivalnce   systematic test design
Boundary and equivalnce systematic test designIan McDonald
 
Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)Mani Kanth
 
Fundamental Test Design Techniques
Fundamental Test Design TechniquesFundamental Test Design Techniques
Fundamental Test Design TechniquesTechWell
 
Black box testing lecture 11
Black box testing lecture 11Black box testing lecture 11
Black box testing lecture 11Abdul Basit
 
Boundary value analysis and equivalence partitioning
Boundary value analysis and equivalence partitioningBoundary value analysis and equivalence partitioning
Boundary value analysis and equivalence partitioningSneha Singh
 
Black Box Testing Techniques by Sampath M
Black Box Testing Techniques by Sampath MBlack Box Testing Techniques by Sampath M
Black Box Testing Techniques by Sampath MForziatech
 
White Box Testing
White Box TestingWhite Box Testing
White Box TestingAlisha Roy
 

Was ist angesagt? (20)

5 black box and grey box testing
5   black box and grey box testing5   black box and grey box testing
5 black box and grey box testing
 
Black box testing or behavioral testing
Black box testing or behavioral testingBlack box testing or behavioral testing
Black box testing or behavioral testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
 
Lesson 2....PPT 1
Lesson 2....PPT 1Lesson 2....PPT 1
Lesson 2....PPT 1
 
Black box & white-box testing technique
Black box & white-box testing techniqueBlack box & white-box testing technique
Black box & white-box testing technique
 
Testing techniques
Testing techniquesTesting techniques
Testing techniques
 
Test case techniques
Test case techniquesTest case techniques
Test case techniques
 
New software testing-techniques
New software testing-techniquesNew software testing-techniques
New software testing-techniques
 
Black box testing
Black box testingBlack box testing
Black box testing
 
Black box testing
Black box testingBlack box testing
Black box testing
 
Boundary and equivalnce systematic test design
Boundary and equivalnce   systematic test designBoundary and equivalnce   systematic test design
Boundary and equivalnce systematic test design
 
Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)
 
Fundamental Test Design Techniques
Fundamental Test Design TechniquesFundamental Test Design Techniques
Fundamental Test Design Techniques
 
Black box testing lecture 11
Black box testing lecture 11Black box testing lecture 11
Black box testing lecture 11
 
Black box software testing
Black box software testingBlack box software testing
Black box software testing
 
Boundary value analysis and equivalence partitioning
Boundary value analysis and equivalence partitioningBoundary value analysis and equivalence partitioning
Boundary value analysis and equivalence partitioning
 
Black Box Testing Techniques by Sampath M
Black Box Testing Techniques by Sampath MBlack Box Testing Techniques by Sampath M
Black Box Testing Techniques by Sampath M
 
White Box Testing
White Box TestingWhite Box Testing
White Box Testing
 
White box testing
White box testingWhite box testing
White box testing
 

Andere mochten auch

Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testingBugRaptors
 
Model-based Testing Principles
Model-based Testing PrinciplesModel-based Testing Principles
Model-based Testing PrinciplesHenry Muccini
 
Approaches to Software Testing
Approaches to Software TestingApproaches to Software Testing
Approaches to Software TestingScott Barber
 
Chapter 8 software testing
Chapter 8 software testingChapter 8 software testing
Chapter 8 software testingdespicable me
 
software testing strategies
software testing strategiessoftware testing strategies
software testing strategiesHemanth Gajula
 
Model Based Software Testing
Model Based Software TestingModel Based Software Testing
Model Based Software TestingEsin Karaman
 
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...Ryan Tran
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and typesConfiz
 
ASDSpec, Model Based Testing
ASDSpec, Model Based TestingASDSpec, Model Based Testing
ASDSpec, Model Based TestingRachid Kherrazi
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software TestingNishant Worah
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing FundamentalsChankey Pathak
 
Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assuranceruth_reategui
 

Andere mochten auch (18)

Fundamentals of Testing Section 1/6
Fundamentals of Testing   Section 1/6Fundamentals of Testing   Section 1/6
Fundamentals of Testing Section 1/6
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
 
Testing Throughout the Software Life Cycle - Section 2
Testing Throughout the Software Life Cycle - Section 2Testing Throughout the Software Life Cycle - Section 2
Testing Throughout the Software Life Cycle - Section 2
 
Model-based Testing Principles
Model-based Testing PrinciplesModel-based Testing Principles
Model-based Testing Principles
 
Approaches to Software Testing
Approaches to Software TestingApproaches to Software Testing
Approaches to Software Testing
 
Software testing methods
Software testing methodsSoftware testing methods
Software testing methods
 
Software testing
Software testing   Software testing
Software testing
 
Testing strategies
Testing strategiesTesting strategies
Testing strategies
 
Chapter 8 software testing
Chapter 8 software testingChapter 8 software testing
Chapter 8 software testing
 
software testing strategies
software testing strategiessoftware testing strategies
software testing strategies
 
Analytical Risk-based and Specification-based Testing - Bui Duy Tam
Analytical Risk-based and Specification-based Testing - Bui Duy TamAnalytical Risk-based and Specification-based Testing - Bui Duy Tam
Analytical Risk-based and Specification-based Testing - Bui Duy Tam
 
Model Based Software Testing
Model Based Software TestingModel Based Software Testing
Model Based Software Testing
 
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
 
ASDSpec, Model Based Testing
ASDSpec, Model Based TestingASDSpec, Model Based Testing
ASDSpec, Model Based Testing
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assurance
 

Ähnlich wie Testing Fundamentals

5.Black Box Testing and Levels of Testing.ppt
5.Black Box Testing and Levels of Testing.ppt5.Black Box Testing and Levels of Testing.ppt
5.Black Box Testing and Levels of Testing.pptSyedAhmad732853
 
A PRACTITIONER'S GUIDE TO SOFTWARE TEST DESIGN [Summary]
A PRACTITIONER'S GUIDE TO SOFTWARE TEST DESIGN [Summary]A PRACTITIONER'S GUIDE TO SOFTWARE TEST DESIGN [Summary]
A PRACTITIONER'S GUIDE TO SOFTWARE TEST DESIGN [Summary]Khizra Sammad
 
Coding and testing In Software Engineering
Coding and testing In Software EngineeringCoding and testing In Software Engineering
Coding and testing In Software EngineeringSatya Bhushan Verma
 
Unit testing
Unit testingUnit testing
Unit testingmedsherb
 
lec-11 Testing.ppt
lec-11 Testing.pptlec-11 Testing.ppt
lec-11 Testing.pptdebjani12
 
software testing types jxnvlbnLCBNFVjnl/fknblb
software testing types jxnvlbnLCBNFVjnl/fknblbsoftware testing types jxnvlbnLCBNFVjnl/fknblb
software testing types jxnvlbnLCBNFVjnl/fknblbjeyasrig
 
CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4SIMONTHOMAS S
 
Software testing
Software testingSoftware testing
Software testingBala Ganesh
 

Ähnlich wie Testing Fundamentals (20)

Testing
TestingTesting
Testing
 
SE%200-Testing%20(2).pptx
SE%200-Testing%20(2).pptxSE%200-Testing%20(2).pptx
SE%200-Testing%20(2).pptx
 
5.Black Box Testing and Levels of Testing.ppt
5.Black Box Testing and Levels of Testing.ppt5.Black Box Testing and Levels of Testing.ppt
5.Black Box Testing and Levels of Testing.ppt
 
Testing
TestingTesting
Testing
 
A PRACTITIONER'S GUIDE TO SOFTWARE TEST DESIGN [Summary]
A PRACTITIONER'S GUIDE TO SOFTWARE TEST DESIGN [Summary]A PRACTITIONER'S GUIDE TO SOFTWARE TEST DESIGN [Summary]
A PRACTITIONER'S GUIDE TO SOFTWARE TEST DESIGN [Summary]
 
Coding and testing In Software Engineering
Coding and testing In Software EngineeringCoding and testing In Software Engineering
Coding and testing In Software Engineering
 
Blackbox
BlackboxBlackbox
Blackbox
 
CTFL Module 04
CTFL Module 04CTFL Module 04
CTFL Module 04
 
Unit testing
Unit testingUnit testing
Unit testing
 
lec-11 Testing.ppt
lec-11 Testing.pptlec-11 Testing.ppt
lec-11 Testing.ppt
 
software testing types jxnvlbnLCBNFVjnl/fknblb
software testing types jxnvlbnLCBNFVjnl/fknblbsoftware testing types jxnvlbnLCBNFVjnl/fknblb
software testing types jxnvlbnLCBNFVjnl/fknblb
 
Paper 06
Paper 06Paper 06
Paper 06
 
software testing
software testingsoftware testing
software testing
 
CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4
 
Software testing
Software testingSoftware testing
Software testing
 
Blackbox
BlackboxBlackbox
Blackbox
 
Testing
TestingTesting
Testing
 
unit 1 (1).pptx
unit 1 (1).pptxunit 1 (1).pptx
unit 1 (1).pptx
 
SWE-6 TESTING.pptx
SWE-6 TESTING.pptxSWE-6 TESTING.pptx
SWE-6 TESTING.pptx
 
Whitebox
WhiteboxWhitebox
Whitebox
 

Mehr von Kiran Kumar

User Interface Standards
User Interface StandardsUser Interface Standards
User Interface StandardsKiran Kumar
 
Banking Overview
Banking OverviewBanking Overview
Banking OverviewKiran Kumar
 
Winrunner Vs QTP
Winrunner Vs QTPWinrunner Vs QTP
Winrunner Vs QTPKiran Kumar
 
Security Testing
Security TestingSecurity Testing
Security TestingKiran Kumar
 
Software Testing
Software TestingSoftware Testing
Software TestingKiran Kumar
 
Software Testing
Software TestingSoftware Testing
Software TestingKiran Kumar
 
Quality Assurance
Quality AssuranceQuality Assurance
Quality AssuranceKiran Kumar
 

Mehr von Kiran Kumar (8)

User Interface Standards
User Interface StandardsUser Interface Standards
User Interface Standards
 
Banking Overview
Banking OverviewBanking Overview
Banking Overview
 
Winrunner Vs QTP
Winrunner Vs QTPWinrunner Vs QTP
Winrunner Vs QTP
 
Security Testing
Security TestingSecurity Testing
Security Testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Testing
TestingTesting
Testing
 
Quality Assurance
Quality AssuranceQuality Assurance
Quality Assurance
 

Kürzlich hochgeladen

Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 

Kürzlich hochgeladen (20)

E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 

Testing Fundamentals

  • 1. Learn Software Testing Testing and Verification
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40. 1210554 Egyptian Multiplication 2468 490 4936 4936 245 9872 122 19744 19744 61 631808 631808 1 315904 315904 3 157952 157952 7 78976 78976 15 39488 30 1234 1234 981 Remainder “ Doubled” Multiplier “ Halved” Multiplicand
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65. The truecase : produces the precondition {(x >= y && x == x) || (x < y && x == y)} which simplifies to {(x >= y && true) || false} and further simplifies to {x >= y} . Backing over the if condition, we get {(x >= y) && (x >= y)} which simplifies to {x >= y} . max = x; {(x >= y && max == x) || (x < y && max == y)} if (x >= y) { max = x; } else { max = y; } {(x >= y && max == x) || (x < y && max == y)} Conditional Statements (cont.)
  • 66. The falsecase : produces the precondition {(x >= y && y == x) || (x < y && y == y)} which simplifies to {(y == x) || (x < y && true)} and further simplifies to {y >= x} . Backing over the negative of the if condition, we get {(y >= x) && (x < y)} which simplifies to {x < y} . max = y; {(x >= y && max == x) || (x < y && max == y)} if (x >= y) { max = x; } else { max = y; } {(x >= y && max == x) || (x < y && max == y)} Conditional Statements (cont.)
  • 67. if (x >= y) { max = x; } else { max = y; } {(x >= y && max == x) || (x < y && max == y)} Combining the results of each pass, we get: {(x >= y) || (x < y)} Since this is always true, it means that the code segment produces the postcondition for all values of x and y . We write the precondition as simply true . Conditional Statements (cont.)
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.