Unit 6 Se
Unit 6 Se
Unit 6 Se
UNIT 6 SYLLABUS
Testing Strategies : A strategic approach to software testing, test strategies for conventional software, Black-Box and White-Box testing, Validation testing, System testing, the art of Debugging. Product metrics : Software Quality, Metrics for Analysis Model, Metrics for Design Model, Metrics for source code, Metrics for testing, Metrics for maintenance.
2
1.
2. 3. 4. 5.
L1
L2 L3 L4 L5
4
8 12 21 34
6.
7. 8. 9. 10. 11.
System Testing
Software Quality Metrics for analysis model Metrics for Design model Metrics for testing Metrics for Maintenance
L5
L6 L7 L8 L9 L9
35
41 45 49 53 54
3
10
Software Testing
Two major categories of software testing Black box testing White box testing Black box testing Treats the system as black box whose behavior can be determined by studying its input and related output Not concerned with the internal structure of the program
11
13
Undirected link
object #3
Fig:a
14
Equivalence partitioning
Divides all possible inputs into classes such that there are a finite equivalence classes. Equivalence class -- Set of objects that can be linked by relationship Reduces the cost of testing
15
Equivalence partitioning
Example Input consists of 1 to 10 Then classes are n<1,1<=n<=10,n>10 Choose one valid class with value within the allowed range and two invalid classes where values are greater than maximum value and smaller than minimum value.
16
17
18
22
23
24
25
Condition Testing
--Exercise the logical conditions contained in a
program module --Focuses on testing each condition in the program to ensure that it does contain errors --Simple condition E1<relation operator>E2 --Compound condition simple condition<Boolean operator>simple condition
27
28
Loop Testing
Focuses on the validity of loop constructs Four categories can be defined 1.Simple loops 2.Nested loops 3.Concatenated loops 4.Unstructured loops
30
Loop Testing
Testing of simple loops -- N is the maximum number of allowable passes through the loop 1.Skip the loop entirely 2.Only one pass through the loop 3.Two passes through the loop 4.m passes through the loop where m>N 5.N-1,N,N+1 passes the loop
31
Loop Testing
Nested Loops 1.Start at the innermost loop. Set all other loops to maximum values 2.Conduct simple loop test for the innermost loop while holding the outer loops at their minimum iteration parameter. 3.Work outward conducting tests for the next loop but keeping all other loops at minimum.
32
Loop Testing
Concatenated loops Follow the approach defined for simple loops, if each of the loop is independent of other. If the loops are not independent, then follow the approach for the nested loops Unstructured Loops Redesign the program to avoid unstructured loops
33
Validation Testing
It succeeds when the software functions in a manner that can be reasonably expected by the customer.
System Testing
Its primary purpose is to test the complete software. 1)Recovery Testing
2)Security Testing
3Stress Testing and 4)Performance Testing
35
37
38
Additional tests
Software Quality
Conformance to explicitly stated functional and performance requirements, explicitly documented development standards, and implicit characteristics that are expected of all professionally developed software. Factors that affect software quality can be categorized in two broad groups: 1. Factors that can be directly measured (e.g. defects uncovered during testing) 2. Factors that can be measured only indirectly (e.g. usability or maintainability)
40
Software Quality
McCalls quality factors 1.Product operation
a. b. c. d. e. Correctness Reliability Efficiency Integrity Usability
2.Product Revision
a. Maintainability b. Flexibility c. Testability
41
Software Quality
3. Product Transition a. Portability b. Reusability c. Interoperability ISO 9126 Quality Factors 1.Functionality 2.Reliability 3.Usability 4.Efficiency 5.Maintainability 6.Portability
42
43
Product metrics
Product metrics for computer software helps us to assess quality. Measure -- Provides a quantitative indication of the extent, amount, dimension, capacity or size of some attribute of a product or process Metric(IEEE 93 definition) -- A quantitative measure of the degree to which a system, component or process possess a given attribute Indicator -- A metric or a combination of metrics that provide insight into the software process, a software project or a product itself
44
46
47
48
50
51
54