OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Definitions and objectives Software testing strategies Software test.

Slides:



Advertisements
Similar presentations
Software testing - strategies
Advertisements

SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
David Woo (dxw07u).  What is “White Box Testing”  Data Processing and Calculation Correctness Tests  Correctness Tests:  Path Coverage  Line Coverage.
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
November 2005J. B. Wordsworth: J5DAMQVT1 Design and Method Quality, Verification, and Testing.
OHT 10.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The testing process Determining the test methodology phase Planning.
Chapter 9 Testing the System, part 2. Testing  Unit testing White (glass) box Code walkthroughs and inspections  Integration testing Bottom-up Top-down.
OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Definitions and objectives Software testing strategies Software test.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited The need for comprehensive software quality requirements Classification.
OHT 14.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software quality infrastructure components The need for procedures and.
Testing an individual module
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
Outline Types of errors Component Testing Testing Strategy
OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Chapter 9.3 Software Testing Strategies.
Software Testing Prasad G.
Chapter 11: Testing The dynamic verification of the behavior of a program on a finite set of test cases, suitable selected from the usually infinite execution.
Introduction to Software Testing
Software Testing & Strategies
Software Testing Introduction. Agenda Software Testing Definition Software Testing Objectives Software Testing Strategies Software Test Classifications.
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
SOFTWARE QUALITY ASSURANCE Maltepe University Faculty of Engineering SE 410.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
Quality Assurance ITEC Rick Price. Expectations This course is not purely a lecture course – Classroom participation is a large portion – Everyone.
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Software Testing.
1 Software Quality CIS 375 Bruce R. Maxim UM-Dearborn.
1 Software testing. 2 Testing Objectives Testing is a process of executing a program with the intent of finding an error. A good test case is in that.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Software Testing Testing types Testing strategy Testing principles.
Software Testing The process of operating a system or component under specified conditions, observing and recording the results, and making an evaluation.
Software Testing1 Dr. Samy Abu Nasser Associate Professor Faculty of Engineering & Information Technology.
Unit Testing 101 Black Box v. White Box. Definition of V&V Verification - is the product correct Validation - is it the correct product.
Software Engineering 2 Software Testing Claire Lohr pp 413 Presented By: Feras Batarseh.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
Software quality factors
Software Testing White Box Testing. Agenda What is White Box Testing Correctness Tests and Path Coverage Correctness Tests and Line Coverage McCabe Cyclomatic.
SEN 460 Software Quality Assurance
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Software Testing and Quality Assurance 1. What is the objectives of Software Testing?
Integration testing Integrate two or more module.i.e. communicate between the modules. Follow a white box testing (Testing the code)
1. Black Box Testing  Black box testing is also called functional testing  Black box testing ignores the internal mechanism of a system or component.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
SE513 Software Quality Assurance Lecture02: Software Quality Factors SE513 Software Quality Assurance Lecture02: Software Quality Factors Galin, SQA from.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Tool Support for Testing Classify different types of test tools according to their purpose Explain the benefits of using test tools.
CHAPTER 9 - PART 1 Software Testing Strategies. Lesson Outlines Definitions and objectives Software testing strategies Software test classifications White.
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
CHAPTER 9 - PART 2 Software Testing Strategies. Lesson Outlines ■ White box testing – Data processing and calculation correctness tests – Correctness.
Dynamic Black-Box Testing Part 1 What is dynamic black-box testing? How to reduce the number of test cases using: Equivalence partitioning Boundary value.
OHT 10.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The testing process Determining the test methodology phase Planning.
Software Quality Control and Quality Assurance: Introduction
Software Testing.
Rekayasa Perangkat Lunak Part-13
Chapter 9, Testing.
Software Quality Assurance Software Quality Factor
Chapter 13 & 14 Software Testing Strategies and Techniques
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Software testing strategies 2
Introduction to Software Testing
Static Testing Static testing refers to testing that takes place without Execution - examining and reviewing it. Dynamic Testing Dynamic testing is what.
Chapter 10 – Software Testing
Software Testing “If you can’t test it, you can’t design it”
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Chapter 13 & 14 Software Testing Strategies and Techniques 1 Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Presentation transcript:

OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Definitions and objectives Software testing strategies Software test classifications White box testing Data processing and calculation correctness tests Correctness tests and path coverage Correctness tests and line coverage McCabe’s cyclomatic complexity metrics Software qualification and reusability testing Advantages and disadvantages of white box testing Black box testing Equivalence classes for output correctness tests Other operation factor testing classes Revision factor testing classes Transition factor testing classes Advantages and disadvantages of black box testing

OHT 9.2 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software testing is a formal process carried out by a specialized testing team in which a software unit, several integrated software units or an entire software package are examined by running the programs on a computer. All the associated tests are performed according to approved test procedures on approved test cases.

OHT 9.3 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Direct objectives a.To identify and reveal as many errors as possible in the tested software b.To bring the tested software, after correction of the identified errors and retesting, to an acceptable level of quality. c.To perform the required tests efficiently and effectively, within the limits budgetary and scheduling limitation. Indirect objectives a. To compile a record of software errors for use in error prevention (by corrective and preventive actions)

OHT 9.4 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Incremental testing strategies: –Bottom-up testing –Top-down testing Big bang testing

OHT 9.5 Galin, SQA from theory to implementation © Pearson Education Limited 2004 M9 M8 M1M2M3M4M5M6M7 M10 M11 Integration A Integration BIntegration c Stage 2 Stage 4 Stage 3 Stage 1

OHT 9.6 Galin, SQA from theory to implementation © Pearson Education Limited 2004 M9 M8 M1M2 M3M4M5 M6M7 M10 M11 Integration C Integration A Integration B Stage 3 Stage 1 Stage 2 Stage 5 Integration D Stage 4 Stage 6

OHT 9.7 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Top-down testing of module M8Bottom-up testing of module M8 Module on test M9 Stub of M2 Stub of M1 M8 Module on test Drive of M9 M2M1 M8 Module tested in an earlier stage Modules tested in an earlier stage

OHT 9.8 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Black box testing 1.Testing that ignores the internal mechanism of the system or component and focuses solely on the outputs in response to selected inputs and execution conditions 2.Testing conducted to evaluate the compliance of a system or component with specified functional requirements White box testing Testing that takes into account the internal mechanism of a system or component

OHT 9.9 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Path coverage Path coverage of a test is measured by the percentage of all possible program paths included in planned testing. Line coverage Line coverage of a test is measured by the percentage of program code lines included in planned testing.

OHT 9.10 Galin, SQA from theory to implementation © Pearson Education Limited 2004 EExample ITS taxi fares for one-time passengers are calculated as follows: 1.Minimal fare: $2. This fare covers the distance traveled up to 1000 yards and waiting time (stopping for traffic lights or traffic jams, etc.) of up to 3 minutes. 2.For every additional 250 yards or part of it: 25 cents. 3.For every additional 2 minutes of stopping or waiting or part thereof: 20 cents. 4.One suitcase: 0 change; each additional suitcase: $1. 5.Night supplement: 25%, effective for journeys between and Regular clients are entitled to a 10% discount and are not charged the night supplement.

OHT 9.11 Galin, SQA from theory to implementation © Pearson Education Limited 2004 S ≤ 1S >1 Yes WT ≤ 3 WT > 3 D ≤ Charge the minimal fare 2 Distance 5 Waiting time 14 Night journey? 11 Regular client? Print receipt. 8 No.of suitcases 910 D > No Yes

OHT 9.12 Galin, SQA from theory to implementation © Pearson Education Limited R1 R2 R3 R5 R4 R6

OHT 9.13 Galin, SQA from theory to implementation © Pearson Education Limited R1 R2 R3 R5 R4 R6

OHT 9.14 Galin, SQA from theory to implementation © Pearson Education Limited 2004 V(G)=R=6 V(G)=E-N+2= =6 V(G)=P+1=5+1=6 R=Regions N=Nodes E=Edges P=Decisions McCabe’s cyclomatic complexity metrics

OHT 9.15 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Advantages: *Direct determination of software correctness as expressed in the processing paths, including algorithms. *Allows performance of line coverage follow up. *Ascertains quality of coding work and its adherence to coding standards. Disadvantages : *The vast resources utilized, much above those required for black box testing of the same software package. *The inability to test software performance in terms of availability (response time), reliability, load durability, etc.

OHT 9.16 Galin, SQA from theory to implementation © Pearson Education Limited 2004 A black box method aimed at increasing the efficiency of testing and, at the same time, improving coverage of potential error conditions.

OHT 9.17 Galin, SQA from theory to implementation © Pearson Education Limited 2004 An equivalence class (EC) is a set of input variable values that produce the same output results or that are processed identically. EC boundaries are defined by a single numeric or alphabetic value, a group of numeric or alphabetic values, a range of values, and so on. An EC that contains only valid states is defined as a "valid EC," whereas an EC that contains only invalid states is defined as the "invalid EC." In cases where a program's input is provided by several variables, valid and invalid ECs should be defined for each variable.

OHT 9.18 Galin, SQA from theory to implementation © Pearson Education Limited 2004 According to the equivalence class partitioning method: Each valid EC and each invalid EC are included in at least one test case. Definition of test cases is done separately for the valid and invalid ECs. In defining a test case for the valid ECs, we try to cover as many as possible “new” ECs in that same test case. In defining invalid ECs, we must assign one test case to each “new” invalid EC, as a test case that includes more than one invalid EC may not allow the tester to distinguish between the program’s separate reactions to each of the invalid ECs. Test cases are added as long as there are uncovered ECs. 34,751

OHT 9.19 Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 9.20 Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 9.21 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Other operation factor testing classes Correctness (1) Documentation tests (2) Availability tests (reaction time) Reliability Reliability tests Efficiency Stress tests Integrity Software system security tests Usability (1) Training usability tests (2) Operational usability tests Quality requirement factor Test class

OHT 9.22 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Revision factor testing classes Maintainability tests - structure - documentation Flexibility tests - modular structure - parametric options Testability tests - ease of testing, intermediate results, log files

OHT 9.23 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Transition factor testing classes Portability tests - standards adhered to - estimate the sources required for transfer Reusability tests - if reusability standards are adhered to Test for interoperability tests

OHT 9.24 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Advantages:  Allows us to carry out the majority of testing classes, most of which can be implemented solely by black box tests, i.e. load tests and availability tests.  For testing classes that can be carried out by both white and black box tests, black box testing requires fewer resources. Disadvantages:  Possibility that coincidental aggregation of several errors will produce the correct response for a test case, and prevent error detection.  Absence of control of line coverage. There is no easy way to specify the parameters of the test cases required to improve coverage. * Impossibility of testing the quality of coding and its strict adherence to the coding standards.