The document provides an overview of software testing concepts including:
- The differences between errors, faults, failures, and bugs and where they originate from in the development process.
- The four main levels of testing: unit testing, integration testing, system testing, and regression testing.
- The importance of testing and the large costs associated with not adequately testing software as evidenced by the Ariane 5 rocket example.
- Key testing activities like test case design, test execution, and analyzing results.
- When verification and validation occur in the software development lifecycle.
- Common testing strategies, metrics, and challenges.
This lecture is about the detail definition of software quality and quality assurance. Provide details about software tesing and its types. Clear the basic concepts of software quality and software testing.
This presentation is about the following points ,
Introduction to Manual Software testing,
What is Testing,
What is Quality,
How to define Software Testing Principles,
What are the types of Software Tests,
What is Test Planning,
Test Execution and Reporting,
Real-Time Testing,
This lecture is about the detail definition of software quality and quality assurance. Provide details about software tesing and its types. Clear the basic concepts of software quality and software testing.
This presentation is about the following points ,
Introduction to Manual Software testing,
What is Testing,
What is Quality,
How to define Software Testing Principles,
What are the types of Software Tests,
What is Test Planning,
Test Execution and Reporting,
Real-Time Testing,
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
A brief that includes the following:
- Software Testing
- Quality Assurance
- Quality Control
- Types of Testing
- Levels of Software Testing
- Types of Performance Testing
- API
- Verification & Validation
- Test Plan & Testing Strategy
- Agile & Waterfall
- Software Development Life Cycle
- Career Path
Software Testing - Test management - Mazenet SolutionMazenetsolution
Topics: Organisation,configuraiton management,test estimation,monitoring and control,incident management,standards for testing.
To know more about
Offer- http://mazenet-chennai.in/mazenet-offers.html
Syllabus- http://www.mazenet-chennai.in/software-testing-training-in-chennai.html
Slide share: http://www.slideshare.net/mazenet_solution/presentations
For more events- http://mazenet-chennai.in/mazenet-events.html
All videos- https://www.youtube.com/c/Mazenetsolution
Facebook- https://www.facebook.com/Mazenet.IT.Solution/
Twitter- https://twitter.com/Maze_net
Mail us : marketing@mazenetsolution.com
Contact: 9629728714
Slides about different types of testing including verification, validation and calibration. It is not same as regular PPT. I don't have conclusion part, because there's not always a hero in the story.
We have compiled the most important slides from each speaker's presentation. This year’s compilation, available for free, captures the key insights and contributions shared during the DfMAy 2024 conference.
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
A brief that includes the following:
- Software Testing
- Quality Assurance
- Quality Control
- Types of Testing
- Levels of Software Testing
- Types of Performance Testing
- API
- Verification & Validation
- Test Plan & Testing Strategy
- Agile & Waterfall
- Software Development Life Cycle
- Career Path
Software Testing - Test management - Mazenet SolutionMazenetsolution
Topics: Organisation,configuraiton management,test estimation,monitoring and control,incident management,standards for testing.
To know more about
Offer- http://mazenet-chennai.in/mazenet-offers.html
Syllabus- http://www.mazenet-chennai.in/software-testing-training-in-chennai.html
Slide share: http://www.slideshare.net/mazenet_solution/presentations
For more events- http://mazenet-chennai.in/mazenet-events.html
All videos- https://www.youtube.com/c/Mazenetsolution
Facebook- https://www.facebook.com/Mazenet.IT.Solution/
Twitter- https://twitter.com/Maze_net
Mail us : marketing@mazenetsolution.com
Contact: 9629728714
Slides about different types of testing including verification, validation and calibration. It is not same as regular PPT. I don't have conclusion part, because there's not always a hero in the story.
We have compiled the most important slides from each speaker's presentation. This year’s compilation, available for free, captures the key insights and contributions shared during the DfMAy 2024 conference.
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...ssuser7dcef0
Power plants release a large amount of water vapor into the
atmosphere through the stack. The flue gas can be a potential
source for obtaining much needed cooling water for a power
plant. If a power plant could recover and reuse a portion of this
moisture, it could reduce its total cooling water intake
requirement. One of the most practical way to recover water
from flue gas is to use a condensing heat exchanger. The power
plant could also recover latent heat due to condensation as well
as sensible heat due to lowering the flue gas exit temperature.
Additionally, harmful acids released from the stack can be
reduced in a condensing heat exchanger by acid condensation. reduced in a condensing heat exchanger by acid condensation.
Condensation of vapors in flue gas is a complicated
phenomenon since heat and mass transfer of water vapor and
various acids simultaneously occur in the presence of noncondensable
gases such as nitrogen and oxygen. Design of a
condenser depends on the knowledge and understanding of the
heat and mass transfer processes. A computer program for
numerical simulations of water (H2O) and sulfuric acid (H2SO4)
condensation in a flue gas condensing heat exchanger was
developed using MATLAB. Governing equations based on
mass and energy balances for the system were derived to
predict variables such as flue gas exit temperature, cooling
water outlet temperature, mole fraction and condensation rates
of water and sulfuric acid vapors. The equations were solved
using an iterative solution technique with calculations of heat
and mass transfer coefficients and physical properties.
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERSveerababupersonal22
It consists of cw radar and fmcw radar ,range measurement,if amplifier and fmcw altimeterThe CW radar operates using continuous wave transmission, while the FMCW radar employs frequency-modulated continuous wave technology. Range measurement is a crucial aspect of radar systems, providing information about the distance to a target. The IF amplifier plays a key role in signal processing, amplifying intermediate frequency signals for further analysis. The FMCW altimeter utilizes frequency-modulated continuous wave technology to accurately measure altitude above a reference point.
Welcome to WIPAC Monthly the magazine brought to you by the LinkedIn Group Water Industry Process Automation & Control.
In this month's edition, along with this month's industry news to celebrate the 13 years since the group was created we have articles including
A case study of the used of Advanced Process Control at the Wastewater Treatment works at Lleida in Spain
A look back on an article on smart wastewater networks in order to see how the industry has measured up in the interim around the adoption of Digital Transformation in the Water Industry.
About
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
• Remote control: Parallel or serial interface.
• Compatible with MAFI CCR system.
• Compatible with IDM8000 CCR.
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
• Easy in configuration using DIP switches.
Technical Specifications
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
Key Features
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
• Remote control: Parallel or serial interface
• Compatible with MAFI CCR system
• Copatiable with IDM8000 CCR
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
Application
• Remote control: Parallel or serial interface.
• Compatible with MAFI CCR system.
• Compatible with IDM8000 CCR.
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
• Easy in configuration using DIP switches.
Cosmetic shop management system project report.pdfKamal Acharya
Buying new cosmetic products is difficult. It can even be scary for those who have sensitive skin and are prone to skin trouble. The information needed to alleviate this problem is on the back of each product, but it's thought to interpret those ingredient lists unless you have a background in chemistry.
Instead of buying and hoping for the best, we can use data science to help us predict which products may be good fits for us. It includes various function programs to do the above mentioned tasks.
Data file handling has been effectively used in the program.
The automated cosmetic shop management system should deal with the automation of general workflow and administration process of the shop. The main processes of the system focus on customer's request where the system is able to search the most appropriate products and deliver it to the customers. It should help the employees to quickly identify the list of cosmetic product that have reached the minimum quantity and also keep a track of expired date for each cosmetic product. It should help the employees to find the rack number in which the product is placed.It is also Faster and more efficient way.
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...Amil Baba Dawood bangali
Contact with Dawood Bhai Just call on +92322-6382012 and we'll help you. We'll solve all your problems within 12 to 24 hours and with 101% guarantee and with astrology systematic. If you want to take any personal or professional advice then also you can call us on +92322-6382012 , ONLINE LOVE PROBLEM & Other all types of Daily Life Problem's.Then CALL or WHATSAPP us on +92322-6382012 and Get all these problems solutions here by Amil Baba DAWOOD BANGALI
#vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore#blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #blackmagicforlove #blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #Amilbabainuk #amilbabainspain #amilbabaindubai #Amilbabainnorway #amilbabainkrachi #amilbabainlahore #amilbabaingujranwalan #amilbabainislamabad
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Using recycled concrete aggregates (RCA) for pavements is crucial to achieving sustainability. Implementing RCA for new pavement can minimize carbon footprint, conserve natural resources, reduce harmful emissions, and lower life cycle costs. Compared to natural aggregate (NA), RCA pavement has fewer comprehensive studies and sustainability assessments.
2. Faults and Failures
• A program may
fail during testing:
▪A manifestation of a fault
(also called defect or bug).
▪Mere presence of a fault may not
lead to a failure. 2
3. Errors, Faults, Failures
• Programming is human effort-intensive:
▪ Therefore, inherently error prone.
• IEEE std 1044, 1993 defined errors and
faults as synonyms :
• IEEE Revision of std 1044 in 2010
introduced finer distinctions:
▪ For more expressive communications
distinguished between Errors and Faults 3
7. How are Bugs Reduced?
• Review
• Testing
• Formal specification and
verification
• Use of development process
7
8. Cost of Not Adequately Testing
• Can be enormous
• Example:
• Ariane 5 rocket self-destructed 37 seconds after launch
• Reason: A software exception bug went undetected…
– Conversion from 64-bit floating point to 16-bit signed integer
value had caused an exception
• The floating point number was larger than 32767
• Efficiency considerations had led to the disabling of the
exception handler.
• Total Cost: over $1 billion 8
9. How to Test?
• Input test data to the program.
• Observe the output:
▪Check if the program behaved as
expected.
9
10. Examine Test Result…
•If the program does not
behave as expected:
▪Note the conditions under
which it failed (Test report).
▪Later debug and correct.
10
11. Testing Facts
• Consumes the largest effort among
all development activities:
▪ Largest manpower among all roles
▪ Implies more job opportunities
• About 50% development effort
▪ But 10% of development time?
▪ How? 11
12. Testing Facts
• Testing is getting more complex and
sophisticated every year.
▪ Larger and more complex programs
▪ Newer programming paradigms
▪ Newer testing techniques
▪ Test automation 12
13. Testing Perception
• Testing is often viewed as not very
challenging --- less preferred by novices,
but:
▪ Over the years testing has taken a center
stage in all types of software development.
▪ “Monkey testing is passe” --- Large number of
innovations have taken place in testing area ---
requiring tester to have good knowledge of
test techniques.
▪ Challenges of test automation 13
15. Test How Long?
• Another way:
▪Seed bugs… run test cases
▪See if all (or most) are getting
detected
# Bugs
Time
One way:
15
16. Verification versus Validation
• Verification is the process of
determining:
▪ Whether output of one phase of
development conforms to its previous phase.
• Validation is the process of
determining:
▪ Whether a fully developed system
conforms to its SRS document..
16
17. Verification versus Validation
• Verification is concerned with
phase containment of errors:
▪Whereas, the aim of validation is
that the final product is error
free.
17
18. Verification and Validation Techniques
• Review
• Simulation
• Unit testing
• Integration
testing
18
• System testing
19. Verification Validation
Are you building it
right?
Have you built the right
thing?
Checks whether an
artifact conforms to
its previous artifact.
Checks the final product
against the specification.
Done by developers. Done by Testers.
Static and dynamic
activities: reviews,
unit testing.
Dynamic activities:
Execute software and
check against
requirements. 19
22. 22
Test Levels
• Unit testing
▪ Test each module (unit, or component)
independently
▪ Mostly done by developers of the modules
• Integration and system testing
▪ Test the system as a whole
▪ Often done by separate testing or QA team
• Acceptance testing
▪ Validation of system functions by the
customer
23. Levels of Testing
What users
really need
Requirements
Design
Code
Acceptance
testing
System testing
Integration testing
Unit testing
Maintenance Regression Testing
24. Overview of Activities During System and
Integration Testing
• Test Suite Design
• Run test cases
• Check results to detect failures.
• Prepare failure list
• Debug to locate errors
• Correct errors.
Tester
Developer
24
25. Quiz 1
• As testing proceeds more and more bugs
are discovered.
▪ How to know when to stop testing?
• Give examples of the types of bugs
detected during:
▪ Unit testing?
▪ Integration testing?
▪ System testing? 25
26. Unit testing
• During unit testing, functions (or
modules) are tested in isolation:
▪What if all modules were to be tested
together (i.e. system testing)?
•It would become difficult to
determine which module has the
error. 26
27. Integration Testing
• After modules of a system have
been coded and unit tested:
▪Modules are integrated in
steps according to an integration plan
▪The partially integrated system is
tested at each integration step. 27
28. Integration and System Testing
• Integration test evaluates a group of
functions or classes:
▪ Identifies interface compatibility, unexpected
parameter values or state interactions, and
run-time exceptions
▪ System test tests working of the entire
system
• Smoke test:
▪ System test performed daily or several times
a week after every build.
28
29. Types of System Testing
• Based on types test:
▪ Functionality test
▪ Performance test
• Based on who performs testing:
▪ Alpha
▪ Beta
▪ Acceptance test 29
30. Performance test
• Determines whether a system or
subsystem meets its non-functional
requirements:
• Response times
• Throughput
• Usability
• Stress
• Recovery
• Configuration, etc. 30
31. User Acceptance Testing
• User determines whether the
system fulfills his requirements
▪Accepts or rejects delivered
system based on the test
results.
31
32. Who Tests Software?
• Programmers:
▪ Unit testing
▪ Test their own or other’s programmer’s code
• Users:
▪ Usability and acceptance testing
▪ Volunteers are frequently used to test beta
versions
• Test team:
▪ All types of testing except unit and acceptance
▪ Develop test plans and strategy 32
34. Pesticide Effect
• Errors that escape a fault detection
technique:
▪ Can not be detected by further
applications of that technique.
F
I
L
T
E
R
F
I
L
T
E
R
F
I
L
T
E
R
34
F
I
L
T
E
R
35. Capers Jones Rule of Thumb
• Each of software review,
inspection, and test step will
find 30% of the bugs present.
In IEEE Computer, 1996
35
Capers Jones
36. Pesticide Effect
• Assume to start with 1000 bugs
• We use 4 fault detection
techniques :
▪ Each detects only 70% bugs existing
at that time
▪ How many bugs would remain at end?
▪ 1000*(0.3)4=81 bugs 36
38. 38
Quiz: Solution
Feasibility Study
Req. Analysis
Design
Coding
Testing
Maintenance
1. When are verification undertaken in waterfall model?
2. When is testing undertaken in waterfall model?
Ans: Coding phase and Testing phase
3. When is validation undertaken in waterfall model?
Verification
Validation
40. V Model
• It is a variant of the Waterfall
▪ Emphasizes verification and
validation (V&V) activities.
▪ V&V activities are spread over the
entire life cycle.
• In every phase of development:
▪ Testing activities are planned in
parallel with development. 40
42. V Model Steps
• Planning
• Requirements
Specification and
Analysis
• Design
• System and
acceptance testing
• Integration and
Testing 42
43. V Model: Strengths
• Starting from early stages of
software development:
▪ Emphasize planning for verification
and validation of the software
• Each deliverable is made testable
• Intuitive and easy to use 43
44. V Model Weaknesses
• Does not support overlapping of
phases
• Does not support iterations
• Not easy to handle later changes in
requirements
• Does not support any risk handling
method 44
45. When to Use V Model
• Natural choice for systems
requiring high reliability:
• Example: embedded control
applications:
▪ All requirements are known up-front
▪ Solution and technology are known45
47. How Many Latent Errors?
• Several independent studies
[Jones],[schroeder], etc. conclude:
▪ 85% errors get removed at the end
of a typical testing process.
▪ Why not more?
▪ All practical test techniques are
basically heuristics… they help to
reduce bugs… but do not guarantee
complete bug removal… 47
48. 48
Evolution of Test Automation
Manual
Test design
and
Automated
Execution
Scripting
Manual
Test design
and
Execution
Capture and
Replay
Model-Based
Testing
Automated
Test design
and
Execution
1960-1990 1990-2000 2000-
48
49. Fault Model
• Types of faults possible in a
program.
• Some types can be ruled out:
▪For example, file related-
problems in a program not
using files. 49
50. Fault Model of an OO Program
Faults in OO Programs
Structural
Faults
Algorithmic
Faults
Procedural
Faults
Traceability
Faults
OO
Faults
Incorrect
Result
Inadequate
Performance
50
51. Hardware Fault-Model
• Essentially only four types:
▪ Stuck-at 0
▪ Stuck-at 1
▪ Open circuit
▪ Short circuit
• Testing is therefore simple:
▪ Devise ways to test the presence of each
• Hardware testing is usually fault-
based testing.
51
52. Test Cases
• Each test case typically tries to
establish correct working of some
functionality:
▪Executes (covers) some program
elements.
▪For certain restricted types of
faults, fault-based testing can be
used.
52
53. • Test data:
▪ Inputs used to test the system
• Test cases:
▪ Inputs to test the system,
▪ State of the software, and
▪ The predicted outputs from the inputs
Test data versus test cases
53
54. Test Cases and Test Suites
• A test case is a triplet [I,S,O]
▪I is the data to be input to the
system,
▪S is the state of the system at
which the data will be input,
▪O is the expected output of the
system. 54
55. What are Negative Test Cases?
• Purpose:
▪ Helps to ensure that the application
gracefully handles invalid and unexpected
user inputs and the application does not
crash.
• Example:
▪ If user types letter in a numeric field, it
should not crash and display the message:
“incorrect data type, please enter a
number…” 55
56. Test Cases and Test Suites
•Test a software using a set
of carefully designed test
cases:
▪The set of all test cases is
called the test suite.
56
57. Test Execution Example: Return Book
• Test case [I,S,O]
1.Set the program in the required
state: Book record created, member
record created, Book issued
2.Give the defined input: Select renew
book option and request renew for a
further 2 wk period.
3.Observe the output:
▪ Compare it to the expected output.
57
58. Sample: Recording of Test Case & Results
Test Case number
Test Case author
Test purpose
Pre-condition:
Test inputs:
Expected outputs (if any):
Post-condition:
Test Execution history:
Test execution date
Test execution person
Test execution result (s) : Pass/Fail
If failed : Failure information
: fix status
58
59. Test Team- Human Resources
• Test Planning: Experienced people
• Test scenario and test case design: Experienced
and test qualified people
• Test execution: semi-experienced to
inexperienced
• Test result analysis: experienced people
• Test tool support: experienced people
• May include external people:
▪ Users
▪ Industry experts 59
60. Why Design of Test Cases?
• Exhaustive testing of any non-trivial
system is impractical:
▪ Input data domain is extremely large.
• Design an optimal test suite, meaning:
▪ Of reasonable size, and
▪ Uncovers as many errors as possible. 60
61. Design of Test Cases
• If test cases are selected randomly:
▪ Many test cases would not contribute to
the significance of the test suite,
▪ Would only detect errors that are already
detected by other test cases in the suite.
• Therefore, the number of test cases in
a randomly selected test suite:
▪ Does not indicate the effectiveness of
testing.
61
62. Design of Test Cases
• Testing a system using a large
number of randomly selected test
cases:
▪Does not mean that most errors in
the system will be uncovered.
• Consider following example:
▪Find the maximum of two integers x
and y. 62
63. Design of Test Cases
• The code has a simple programming
error:
• If (x>y) max = x;
else max = x; // should be max=y;
• Test suite {(x=3,y=2);(x=2,y=3)} can
detect the bug,
• A larger test suite {(x=3,y=2);(x=4,y=3);
(x=5,y=1)} does not detect the bug. 63
64. Test Plan
• Before testing activities start, a test
plan is developed.
• The test plan documents the following:
▪ Features to be tested
▪ Features not to be tested
▪ Test strategy
▪ Test suspension criteriastopping criteria
▪ Test effort
▪ Test schedule 64
65. Design of Test Cases
• Systematic approaches are
required to design an effective
test suite:
▪Each test case in the suite
should target different faults.
65
66. Testing Strategy
• Test Strategy primarily addresses:
▪ Which types of tests to deploy?
▪ How much effort to devote to which
type of testing?
• Black-box: Usage–based testing (based
on customers’ actual usage pattern)
• White-box testing can be guided by
black box testing results 66
67. Consider Past Bug Detection Data…
10%
40%
25%
15%
10%
Reviews Unit
test
System
test
Integration
test
customer
reported
Quiz: How would you use
this for planning test
effort?
# of Bugs
Detected
67
68. Consider Past Bug Detection Data…
50%
30%
10% 10%
test
Technique 1
test
Technique 2
test
Technique 3
customer
reported
Quiz: How would you
use this for planning
test effort?
Problems
Detected
68
69. Distribution of Error Prone Modules
customer reported bugs for Release 1
Quiz 6: How would you use
this for planning Release 2 testing?
# bugs
Detected
M1 M3
M2 M6
M5
M4
69
Defect clustering: A few modules usually contain most defects…
71. When and Why of Unit Testing?
• Unit testing carried out:
• After coding of a unit is complete
and it compiles successfully.
•Unit testing reduces
debugging effort substantially.
71
72. Why unit test?
• Without unit test:
▪ Errors become
difficult to track
down.
▪ Debugging cost
increases
substantially…
Failure
73. Unit Testing
• Testing of individual methods, modules,
classes, or components in isolation:
▪ Carried out before integrating with other
parts of the software being developed.
• Support required for for Unit testing:
▪ Driver
• Simulates the behavior of a function that calls
and possibly supplies some data to the function
being tested.
▪ Stub
• Simulates the behavior of a function that has
not yet been written.
Unit
Driver
Stub
73
75. Quiz
• Unit testing can be considered as
which one of the following types
of activities?
▪ Verification
▪ Validation
75
76. Design of Unit Test Cases
• There are essentially three main
approaches to design test cases:
▪Black-box approach
▪White-box (or glass-box)
approach
▪Grey-box approach 76
77. Black-Box Testing
• Test cases are designed using only
functional specification of the
software:
▪Without any knowledge of the
internal structure of the software.
• Black-box testing is also known as
functional testing.
Software
Input
Output
77
78. What is Hard about BB Testing
• Data domain is large
• A function may take multiple
parameters:
▪ We need to consider the
combinations of the values of the
different parameters.
78
79. What’s So Hard About Testing?
• Consider int check-equal(int x, int y)
• Assuming a 64 bit computer
▪ Input space = 2128
•Assuming it takes 10secs to key-in an integer
pair:
▪It would take about a billion years to enter all
possible values!
▪Automatic testing has its own problems! 79
80. Solution
• Construct model of the data
domain:
▪ Called Domain based testing
▪ Select data based on the domain
model
80
82. Black Box Testing
• Considers the software as a black box:
▪Test data derived from the specification
• No knowledge of code necessary
• Also known as:
▪ Data-driven or
▪ Input/output driven testing
• The goal is to achieve the thoroughness
of exhaustive input testing:
▪With much less effort!!!!
82
System
Input Output
83. Black-Box Testing
• Scenario coverage
•Equivalence class partitioning
•Special value (risk-based) testing
▪Boundary value testing
▪Cause-effect (Decision Table)
testing
▪Combinatorial testing
▪Orthogonal array testing
83
84. Black-Box Testing
• Scenario coverage
•Equivalence class partitioning
•Special value (risk-based) testing
▪Boundary value testing
▪Cause-effect (Decision Table) testing
▪Combinatorial testing
▪Orthogonal array testing 84
86. Equivalence Class Partitioning
• The input values to a program:
▪ Partitioned into equivalence classes.
• Partitioning is done such that:
▪Program behaves in similar ways to
every input value belonging to an
equivalence class.
▪At the least there should be as many
equivalence classes as scenarios.
86
87. Why Define Equivalence Classes?
• Premise:
▪ Testing code with any one
representative value from a
equivalence class:
▪As good as testing using any
other values from the
equivalence class. 87
E1 E2 E3
88. Equivalence Class Partitioning
• How do you identify equivalence
classes?
▪Identify scenarios
▪Examine the input data.
▪Examine output
•Few guidelines for determining the
equivalence classes can be given… 88
89. Jerry Gao Ph.D.7/20002 All Rights Reserved
•If an input condition specifies a range, one valid and two
invalid equivalence class are defined.
•If an input condition specifies a member of a set, one
valid and one invalid equivalence classes are defined.
•If an input condition is Boolean, one valid and one invalid
classes are defined.
•Example:
•Area code: range --- value defined between 10000 and
90000
•Password: value - six character string.
Guidelines to Identify Equivalence Classes
89
90. Equivalent class partition: Example
• Given three sides, determine the
type of the triangle:
▪ Isosceles
▪ Scalene
▪ Equilateral, etc.
• Hint: scenarios expressed in output
in this case.
90