1 testing18 Software Testing Functional, MCC, Dataflow Testing, Cause-Effect Graphing.

Slides:



Advertisements
Similar presentations
Decision Structures - If / Else If / Else. Decisions Often we need to make decisions based on information that we receive. Often we need to make decisions.
Advertisements

Course Outline Traditional Static Program Analysis –Theory Compiler Optimizations; Control Flow Graphs Data-flow Analysis – today’s class –Classic analyses.
Whitebox Testing Fra: CS Fall Whitebox Testing AKA Structural, Basis Path Test Normally used at unit level Assumes errors at unit level are.
1 ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Lecture 11 Instructor Paulo Alencar.
1 Introduction to Data Flow Analysis. 2 Data Flow Analysis Construct representations for the structure of flow-of-data of programs based on the structure.
Systems V & V, Quality and Standards
Black Box Testing Csci 565 Spring 2009.
Software Testing Logic Coverage. Introduction to Software Testing (Ch 3) © Ammann & Offutt 2 Logic Coverage Four Structures for Modeling Software Graphs.
Data Flow Testing (DFT) Data flow testing is NOT the same as constructing Design Diagrams in the form of data-flow-diagrams (DFD) or E-R diagrams. It is.
Software Testing Sudipto Ghosh CS 406 Fall 99 November 16, 1999.
Introduction Chapter 4: Control structures. Introduction to OOPDr. S. GANNOUNI & Dr. A. TOUIRPage 2 Objectives What are control structures Relational.
Chapter 8: Path Testing Csci 565.
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming Conditional Statements Control Structures.
Software Testing and Quality Assurance
Tutorial 4 Decision Making with Control Structures and Statements Section A - Decision Making JavaScript Tutorial 4 -Decision Making with Control.
Introduction to Software Testing Chapter 3.1 Logic Coverage Paul Ammann & Jeff Offutt.
1.2 – Open Sentences and Graphs
SOFTWARE TESTING WHITE BOX TESTING 1. GLASS BOX/WHITE BOX TESTING 2.
Software Testing and QA Theory and Practice (Chapter 4: Control Flow Testing) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory and Practice.
Path testing Path testing is a “design structural testing” in that it is based on detailed design & the source code of the program to be tested. The methodology.
Warm Up 1) Is (-3, 4) a solution to the system? 2)Solve the system by graphing y = -2x + 5 2y = x - 2.
Software Systems Verification and Validation Laboratory Assignment 3
Topics in Software Dynamic White-box Testing Part 2: Data-flow Testing
Data Flow Testing Data flow testing(DFT) is NOT directly related to the design diagrams of data-flow-diagrams(DFD). It is a form of structural testing.
Software testing techniques Testing criteria based on data flow
Software Testing (Part 2)
White-Box Testing Techniques II Originals prepared by Stephen M. Thebaut, Ph.D. University of Florida Dataflow Testing.
Final Review  Different tests  Boundary Value Testing  Equivalence Class Testing  Decision Table Based Testing  Path Testing  Data Flow & P-Slice.
Institute for Personal Robots in Education (IPRE)‏ CSC 170 Computing: Science and Creativity.
1 Software Testing & Quality Assurance Lecture 10 Created by: Paulo Alencar Modified by: Frank Xu.
Agenda Introduction Overview of White-box testing Basis path testing
1. The y-axis is the perpendicular bisector of AB
1 testing17 Software Testing Functional, MCC, Dataflow Testing, Cause-Effect Graphing.
1 Software Testing. 2 Path Testing 3 Structural Testing Also known as glass box, structural, clear box and white box testing. A software testing technique.
Unit Testing 101 Black Box v. White Box. Definition of V&V Verification - is the product correct Validation - is it the correct product.
CS 217 Software Verification and Validation Week 7, Summer 2014 Instructor: Dong Si
Coverage Estimating the quality of a test suite. 2 Code Coverage A code coverage model calls out the parts of an implementation that must be exercised.
© Janice Regan, CMPT 128, Jan CMPT 128: Introduction to Computing Science for Engineering Students Introduction to branching.
1 540f07cost10 Question of the Day u How important is it to be able to estimate the cost of a software project?
BASIS PATH TESTING.
Logical Thinking CS 104 9/12/11. Agenda Today  College Board survey reminder  Note: Simple “how to” guide on Scratch posted on eLearning  Review HW.
1 Test Coverage Coverage can be based on: –source code –object code –model –control flow graph –(extended) finite state machines –data flow graph –requirements.
1 Preview of Exam 2 - Thurs 4/3 u 150 pts u Readings SOS Articles OCL spec u x 11,both sides, handwritten cribsheet allowed (turn in with exam) u.
White-Box Testing Techniques I Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 7.
Logical path planning Róbert Baláž Technical University of Košice
Paul Ammann & Jeff Offutt
BASIS PATH TESTING.
White-Box Testing Pfleeger, S. Software Engineering Theory and Practice 2nd Edition. Prentice Hall, Ghezzi, C. et al., Fundamentals of Software Engineering.
Dataflow Testing, Object-Oriented
When is testing sufficient?
Structural testing, Path Testing
White Box Testing.
White-Box Testing.
Graph Coverage for Design Elements CS 4501 / 6501 Software Testing
White-Box Testing Techniques II
Dataflow Testing G. Rothermel.
White-Box Testing Techniques III
Paul Ammann & Jeff Offutt
Paul Ammann & Jeff Offutt
Computers & Programming Languages
White-Box Testing Techniques III
Graph Coverage for Design Elements CS 4501 / 6501 Software Testing
Solution to problem 4. a) Control flow graph art Start k = i + 2 * j
White-Box Testing Techniques I
White-Box Testing Techniques II
Whitebox Testing.
Truth tables Mrs. Palmer.
3.5 Compound Inequalities
Java Lessons 9 – 12 Mr. Kalmes.
Unit III – Chapter 3 Path Testing.
Presentation transcript:

1 testing18 Software Testing Functional, MCC, Dataflow Testing, Cause-Effect Graphing

2 testing18 condition < hTttFTT h<80TTFtTT 40< hFTTfxx 0 < wTTxxTF w < 100TTxxFT outputn.e. h/w wag Solution

3 testing18 Multiple Condition Coverage u For each decision –test case for true and test case for false –same as C1 u For each complex (involves logical operators) decision –test case for each combination of T/F for each relational operator –A || B requires TT, TF, FT, FF –Lazy evaluation => TX, FT, FF

4 testing18 TTYP Task – MCC u Generate the test sets to achieve multiple condition coverage for the “if a>=b+c || b>=a+c || c>=a+b” decision in the triangle problem

5 testing18 Data flow coverage u Def x is a node where x is defined (given a value) u Use x is a node where the value of x is used in an expression or a decision –C use is in a computation –P use is in a decision (predicate) u A def-free path is a path from a definition to a use that does not include another definition of that variable.

6 testing18 dcu - from every def to a c-use u c-use (computation) u if a variable is defined in node A and there are computational uses in node B and D, the dcu coverages requires an def-free path segment of either ABC or ACD

7 testing18 dpu - from every def to a p-use u p-use (predicate) u if a variable is defined in node A and it is used in a decision in C, the dpu coverage requires two def-free paths, one with segment of A...CD and one with A...CE

8 testing18 du - from every def to every use u if a variable is defined in node A and there are computational uses in node B and D, the du coverage requires a def-free path from node A to node B and a def-free path from node A to node D

9 testing18 TTYP task u Generate test case sets for triangle problem –dpu –dcu –du

10 testing18 Cause-Effect Graphing u Identify the basic conditions: b1, b2 (aka causes, atomic conditions) u Identify the effects as boolean expressions of the conditions u Identify combinations of the boolean expressions

11 testing18 Classic Example - boiler u Boiler should shut down if –Water level is below 20,000 lb –Water level is above 120,000 lb –Degraded mode and steam meter fails (Degraded mode if water pump has failed or pump monitor has failed)

12 testing18 Conditions for boiler u B1 – water below 20,000 lbs u B2 – water above 120,000 lbs u B3 – water pump has failed u B4 – pump monitor has failed u B5 – steam meter has failed u E1 – shut the boiler u E1 = (B1 or B2 or (B5 (B3 or B4))

13 testing18 Tuesday, Apr 11 u OO testing –Pressman , –SOS ch 13 u PreLecture quiz –functional, mcc, data-flow,