0% found this document useful (0 votes)
18 views

Levels of Testing

Uploaded by

nradd707
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views

Levels of Testing

Uploaded by

nradd707
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 107

IT8076 – softwaRe testing

Unit -3
LEVELS OF TESTING

Dr.j.frank vijay
Professor – it Department
UNIT - 3

LEVELS OF TESTING 09

The need for Levels of Testing – Unit Test – Unit Test Planning – Designing the Unit Tests – The Test
Harness – Running the Unit tests and Recording results – Integration tests – Designing Integration Tests –
Integration Test Planning – Scenario testing – Defect bash elimination System Testing – Acceptance
testing – Performance testing – Regression Testing – Internationalization testing – Ad-hoc testing – Alpha,
Beta Tests – Testing OO systems – Usability and Accessibility testing – Configuration testing –
Compatibility testing – Testing the documentation – Website testing.

2
Course Outcomes

YOU will be able to

Summarize various testing levels and its


applications.
CO 3
Summarize various testing levels
and its applications.

K2

Bloom’s Taxonomy
Lecture - 07
OUTLINE

LEVELS OF TESTING
Unit - 3

7
OUTLINE

The need for Levels of Testing – Unit Test – Unit Test Planning –
Designing the Unit Tests – The Test Harness – Running the Unit
tests and Recording results – Integration tests – Designing
Integration Tests – Integration Test Planning – Scenario testing –
Defect bash elimination System Testing – Acceptance testing – Chapter – 6
Performance testing – Regression Testing – Internationalization
testing – Ad-hoc testing – Alpha, Beta Tests – Testing OO
systems – Usability and Accessibility testing – Configuration
testing –Compatibility testing – Testing the documentation –
Website testing.

Practical Software Testing – Ilene Burnstein


CHAPTER - 6

LEVELS OF TESTING

9
Testing Steps
Design System Other Customer User

Unit code
Unit
test specifications functional software requirements environment
requirements requirements specification

Unit code
Unit
test

.
. Integration Function Performance Acceptance Installation
test test test test test
.

Integrated Functioning Verified, Accepted


modules system validated system
software
Unit
Unit code

test SYSTEM
IN USE!

10
CHAPTER - 6
UNIT TESTING

11
CHAPTER - 6

UNIT TESTING

12
LEVELS OF TESTING

UNIT TESTING

13
LEVELS OF TESTING

UNIT TESTING

14
LEVELS OF TESTING

UNIT TESTING

15
Unit Testing Techniques
UNIT TESTING T e s tin g Te c h n iq u e s

S ta tic T e c h n iq u e s D yn a m ic T e c h n iq u e s

S ym b o lic E xe c u tio n B la c k -B o x Te s tin g W h ite -B o x Te s tin g


(F u n ctio n a l) (S tru c tu ra l)

P ro g ra m P ro v in g
E q u iva le n c e P a rtitio n in g B a s ic P a th T e s tin g

A n o m a ly A n a lys is B o u n b a ry V a lu e A n a lys is M u ta tio n A n a lys is

C a u se -E ffe c t G ra p h in g

R a n d o m Te s tin g

16
LEVELS OF TESTING

UNIT TESTING

17
LEVELS OF TESTING

UNIT TESTING

18
LEVELS OF TESTING

UNIT TESTING

19
LEVELS OF TESTING

UNIT TESTING

20
LEVELS OF TESTING

UNIT TESTING

21
LEVELS OF TESTING

UNIT TESTING

22
LEVELS OF TESTING

UNIT TESTING

23
LEVELS OF TESTING

UNIT TESTING

24
LEVELS OF TESTING

UNIT TESTING

25
LEVELS OF TESTING

UNIT TESTING

26
LEVELS OF TESTING

UNIT TESTING

27
LEVELS OF TESTING

UNIT TESTING

28
LEVELS OF TESTING

UNIT TESTING

29
LEVELS OF TESTING

UNIT TESTING

30
LEVELS OF TESTING

UNIT TESTING

31
LEVELS OF TESTING

UNIT TESTING

32
LEVELS OF TESTING

UNIT TESTING

33
LEVELS OF TESTING

UNIT TESTING

34
LEVELS OF TESTING

UNIT TESTING

35
LEVELS OF TESTING

UNIT TESTING

36
LEVELS OF TESTING

UNIT TESTING

37
LEVELS OF TESTING

UNIT TESTING

38
LEVELS OF TESTING

UNIT TESTING

39
LEVELS OF TESTING

UNIT TESTING

40
LEVELS OF TESTING

UNIT TESTING

41
LEVELS OF TESTING

UNIT TESTING

42
LEVELS OF TESTING

UNIT TESTING

43
LEVELS OF TESTING

INTEGRATION TESTING

44
LEVELS OF TESTING

INTEGRATION TESTING

45
LEVELS OF TESTING

INTEGRATION TESTING

46
LEVELS OF TESTING

INTEGRATION TESTING

47
LEVELS OF TESTING

INTEGRATION TESTING

48
LEVELS OF TESTING

INTEGRATION TESTING

49
LEVELS OF TESTING

INTEGRATION TESTING

50
LEVELS OF TESTING

INTEGRATION TESTING

51
LEVELS OF TESTING

INTEGRATION TESTING

52
LEVELS OF TESTING

INTEGRATION TESTING

53
LEVELS OF TESTING

INTEGRATION TESTING

54
LEVELS OF TESTING

INTEGRATION TESTING

55
LEVELS OF TESTING

INTEGRATION TESTING

56
LEVELS OF TESTING

INTEGRATION TESTING

57
LEVELS OF TESTING

INTEGRATION TESTING

58
LEVELS OF TESTING

INTEGRATION TESTING

59
LEVELS OF TESTING

INTEGRATION TESTING

60
LEVELS OF TESTING

INTEGRATION TESTING

61
LEVELS OF TESTING

INTEGRATION TESTING

62
LEVELS OF TESTING

INTEGRATION TESTING

63
LEVELS OF TESTING

SCENARIO TESTING

64
LEVELS OF TESTING

SCENARIO TESTING

65
LEVELS OF TESTING

SCENARIO TESTING

66
LEVELS OF TESTING

SCENARIO TESTING

67
LEVELS OF TESTING

SCENARIO TESTING

68
LEVELS OF TESTING

SCENARIO TESTING

69
LEVELS OF TESTING

SCENARIO TESTING

70
LEVELS OF TESTING

SCENARIO TESTING

71
LEVELS OF TESTING

SCENARIO TESTING

72
LEVELS OF TESTING

SCENARIO TESTING

73
LEVELS OF TESTING

SCENARIO TESTING

74
LEVELS OF TESTING
DEFECT BASH
ELIMINATION

75
LEVELS OF TESTING
DEFECT BASH
ELIMINATION

76
LEVELS OF TESTING
DEFECT BASH
ELIMINATION

77
LEVELS OF TESTING
DEFECT BASH
ELIMINATION

78
LEVELS OF TESTING

SYSTEM TESTING

79
System Testing

80
System Testing

◉ Functional Testing
◉ Structure Testing
◉ Performance Testing
◉ Acceptance Testing
◉ Installation Testing

Impact of requirements on system testing:


○ The more explicit the requirements, the easier they are to test.
○ Quality of use cases determines the ease of functional testing
○ Quality of subsystem decomposition determines the ease of
structure testing
○ Quality of nonfunctional requirements and constraints
determines the ease of performance tests:

81
Functional Testing
.
Essentially the same as black box testing
◉ Goal: Test functionality of system
◉ Test cases are designed from the requirements analysis document (better
user manual) and centered around requirements and key functions (use
cases)
. What’s in a use case?
What do we test

◉ The system is treated as black box.


◉ Unit test cases can be reused, but in end user oriented new test cases hav
to be developed as well.
82
LEVELS OF TESTING
PERFORMANCE
TESTING

83
LEVELS OF TESTING
PERFORMANCE
TESTING

84
Performance Testing

◉ Stress Testing
○ Stress limits of system (maximum # of ◉ Timing testing
users, peak demands, extended operation) ○ Evaluate response times and time to
perform a function
◉ Volume testing
○ Test what happens if large amounts of data ◉ Environmental test
are handled ○ Test tolerances for heat, humidity,
motion, portability
◉ Configuration testing
○ Test the various software and hardware ◉ Quality testing
configurations ○ Test reliability, maintain- ability &
availability of the system
◉ Compatibility test
○ Test backward compatibility with existing ◉ Recovery testing
systems ○ Tests system’s response to presence
of errors or loss of data.
◉ Security testing
○ Try to violate security requirements ◉ Human factors testing
○ Tests user interface with user

85
Performance vs. Load vs. Stress testing

◉ There are three main types of


speed-related testing:
performance testing, load
testing and stress testing.

86
Performance testing

◉ The goal of performance


testing is not to find bugs,
but to eliminate bottlenecks
and establish a baseline for
future regression testing.

87
Load Testing

◉ Load testing is usually


defined as the process of
exercising the system under
test by feeding it the largest
tasks it can operate with.
◉ Load testing is sometimes
called volume testing, or
longevity/endurance testing.

88
Examples of Load Testing

◉ Testing a word processor by editing a very large documen


◉ Testing a printer by sending it a very large job
◉ Testing a mail server with thousands of users mailboxes
◉ A specific case of volume testing is zero-volume testing,
where the system is fed empty tasks

89
Stress Testing (1)

◉ Testing conducted to evaluate


a system or component at or
beyond the limits of its
specified requirements to
determine the load under
which it fails and how.
◉ A graceful degradation under
load leading to non-
catastrophic failure is the
desired result.

90
Stress Testing (2)

◉ Stress testing tries to break the


system under test by
overwhelming its resources or by
taking resources away from it (in
which case it is sometimes called
negative testing).
◉ The main purpose behind this
madness is to make sure that the
system fails and recovers
gracefully -- this quality is known
as recoverability.

91
Test Cases for Performance Testing

◉ Push the (integrated) system to its limits.


◉ Goal: Try to break the subsystem
◉ Test how the system behaves when overloaded.
○ Can bottlenecks be identified? (First candidates for
redesign in the next iteration
◉ Try unusual orders of execution
○ Call a receive() before send()
◉ Check the system’s response to large volumes of data
○ If the system is supposed to handle 1000 items, try it with
1001 items.
◉ What is the amount of time spent in different use cases?
○ Are typical cases executed in a timely fashion?
92
Configuration Testing

◉ Configuration testing allows developers/testers to evaluate


system performance and availability when hardware
exchanges and reconfigurations occur.

93
Objectives of Configuration Testing

◉ Show that all the configuration changing commands


and menus work properly.
◉ Show that all the interchangeable devices are really
interchangeable, and that they each enter the proper
state for the specified conditions.
◉ Show that the systems’ performance level is
maintained when devices are interchanged, or when
they fail.

94
Configuration Testing Operations

◉ rotate and permutate the positions of devices to ensure physical/ logical


device permutations work for each device (e.g., if there are two printers A
and B, exchange their positions);
◉ induce malfunctions in each device, to see if the system properly handles
the malfunction;
◉ induce multiple device malfunctions to see how the system reacts. These
operations will help to reveal problems (defects) relating to hardware/
software interactions when hardware exchanges, and reconfigurations occur.

95
Security Testing

◉ Evaluates system characteristics that relate to the availability,


integrity and confidentiality of system data and services
◉ Other Areas to focus on Security Testing: password checking,
legal and illegal entry with passwords, password expiration,
encryption, browsing, trap doors, viruses, …

96
Recovery Testing

◉ Subject a system to losses of resources in order to determine


if it can recover properly from these losses
◉ Especially important for transaction systems
◉ Example: loss of a device during a transaction

97
Recovery Testing – Focus Areas

○ Restart – the ability of the system to restart properly on


the last checkpoint after a loss of a device
○ Switchover – the ability of the system to switch to a new
processor, as a result of a command or a detection of a
faulty processor by a monitor

98
LEVELS OF TESTING
ACCEPTANCE
TESTING

99
LEVELS OF TESTING
ACCEPTANCE
TESTING

100
LEVELS OF TESTING
ACCEPTANCE
TESTING

101
LEVELS OF TESTING
ACCEPTANCE
TESTING

102
Acceptance Testing

◉◉ Goal: Demonstrate system is ready for


Goal: Demonstrate system is ready for ◉◉ Alpha
Alphatest:
test:
operational
operationaluse ○○ Sponsor
use
○○ Choice of tests is made by Sponsoruses
usesthethesoftware
softwareatatthe
the
Choice of tests is made by developer’s site.
developer’s site.
client/sponsor
client/sponsor
○○ Many tests can be taken from ○○ Software
Softwareused
usedininaacontrolled
controlled
Many tests can be taken from setting, with the developer
integration
integrationtesting
testing setting, with the developer
○○ Acceptance test is performed by the
Acceptance test is performed by the
always
alwaysready
readytotofix
fixbugs.
bugs.
client,
client,not
notby
bythe
thedeveloper.
developer. ◉◉ Beta
Betatest:
test:
◉◉ Majority of all bugs in software is ○○ Conducted
Majority of all bugs in software is
typically Conductedatatsponsor’s
sponsor’ssitesite
typicallyfound
foundbybythe
theclient
clientafter
afterthe
the (developer is not present)
system (developer is not present)
systemisisininuse,
use,not
notbybythe
thedevelopers
developersoror ○○ Software
testers.
testers.Therefore
Thereforetwo twokinds
kindsofofadditional
additional Softwaregets
getsaarealistic
realisticworkout
workout
tests: inintarget environ- ment
target environ- ment
tests:
○○ Potential
Potentialcustomer
customermightmightgetget
discouraged
discouraged

103
LEVELS OF TESTING
REGRESSION
TESTING

104
LEVELS OF TESTING
REGRESSION
TESTING

105
Testing has its own Life Cycle

Establish the test objectives


Design the test cases
Write the test cases
Test the test cases
Execute the tests
Evaluate the test results
Change the system
Do regression testing

106
THANK
YOU
107

You might also like