Cause & Effect Graph Comparison Testing

Slides:



Advertisements
Similar presentations
Testing “Multiple Conditions” with Decision Table Technique
Advertisements

Overview Functional Testing Boundary Value Testing (BVT)
Decision Table Based Testing
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Equivalence Class Testing
1 ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Instructor Kostas Kontogiannis.
Software Testing and Quality Assurance
Testing an individual module
Chapter 5 Retrospective on Functional Testing Software Testing
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
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.
Equivalence Class Testing
System/Software Testing
Cause & Effect Graph Comparison Testing. Cause & Effect Graph This is basically a hardware testing technique adapted to software testing. It considers.
Black Box Testing Techniques Chapter 7. Black Box Testing Techniques Prepared by: Kris C. Calpotura, CoE, MSME, MIT  Introduction Introduction  Equivalence.
Software Engineering 2 Software Testing Claire Lohr pp 413 Presented By: Feras Batarseh.
Black-box Testing.
5.1 Angles in a Triangle. C-25 The sum of the measures of the ________________ angles in a triangle is _______.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 14a: Software Testing Techniques Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Today’s Agenda  Reminder: HW #1 Due next class  Quick Review  Input Space Partitioning Software Testing and Maintenance 1.
Triangle A polygon with three sides and three angles. A triangle can be names by its’ side lengths and angles. – Side lengths: isosceles, equilateral,
1 Boundary Value Testing Chapter 5. 2 Introduction Input domain testing is the most commonly taught (and perhaps the most commonly used) software testing.
TRIANGLES AND TYPES OF TRIANGLES. A triangle has three sides.
Overview Functional Testing Boundary Value Testing (BVT)
Equivalence Class Testing In chapter 5, we saw that all four variations of boundary value testing are vulnerable to –gaps of untested functionality, and.
SOFTWARE TESTING. Introduction Software Testing is the process of executing a program or system with the intent of finding errors. It involves any activity.
1 Software Testing & Quality Assurance Lecture 5 Created by: Paulo Alencar Modified by: Frank Xu.
Equivalence Class Testing Use the mathematical concept of partitioning into equivalence classes to generate test cases for Functional (Black-box) testing.
Learning Objective Identify triangles using their sides.
Properties of Triangles
Mathematics Types of Triangles.
Angles In Triangles Types of Triangles Isosceles triangle
Chapter 3: Equivalence Class Testing :EC Software Testing
Software Testing.
Triangles.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Domain Testing Functional testing which tests the application by giving inputs and evaluating its appropriate outputs. system does not accept invalid and.
Software Testing.
Decision Table Testing
Triangles.
Input Space Partition Testing CS 4501 / 6501 Software Testing
Functions & Relations.
CS5123 Software Validation and Quality Assurance
Angles In Triangles Types of Triangles Isosceles triangle
Chapter 5 Retrospective on Functional Testing Software Testing
Types of Testing Visit to more Learning Resources.
TRIANGLES AND TYPES OF TRIANGLES
Overview Functional Testing Boundary Value Testing (BVT)
UNIT-4 BLACKBOX AND WHITEBOX TESTING
CSCE 747 Software Testing and Quality Assurance
Triangles Created by G. Antidormi 2005.
Angles In Triangles Types of Triangles Isosceles triangle
Equivalence Class Testing
CSCE 747 Software Testing and Quality Assurance
1.6 Represent Functions as Rules and Tables
CSCE 747 Software Testing and Quality Assurance
CSCE 747 Software Testing and Quality Assurance
Sec 5.4: Classifying Triangles

Objective - To classify triangles.
Chapter 10 – Software Testing
Two-way analysis of variance (ANOVA)
5.2 Relations and Functions
Overview Functional Testing Boundary Value Testing (BVT)
3-3 Parallel Lines & the Triangle Angle Sum Theorem
Overview Functional Testing Boundary Value Testing (BVT)
Classifying Triangles
Overview Functional Testing Boundary Value Testing (BVT)
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Functions What is a function? What are the different ways to represent a function?
Presentation transcript:

Cause & Effect Graph Comparison Testing

Cause & Effect Graph This is basically a hardware testing technique adapted to software testing. It considers only the desired external behavior of a system. This is a testing technique that aids in selecting test cases that logically relate Causes (inputs) to Effects (outputs) to produce test cases.   A “Cause” represents a distinct input condition that brings about an internal change in the system. An “Effect” represents an output condition, a system transformation or a state resulting from a combination of causes.

According to Myer Cause & Effect Graphing is done through the following steps: Step – 1: For a module, identify the input conditions (causes) and actions (effect). Step – 2: Develop a cause-effect graph. Step – 3: Transform cause-effect graph into a decision table. Step – 4: Convert decision table rules to test cases. Each column of the decision table represents a test case.

Consider each node as having the value 0 or 1 where 0 represents the 'absent state' and 1 represents the 'present state'. Then the identity function states that if c1 is 1, e1 is 1 or we can say if c0 is 0, e0 is 0.  The NOT function states that if C1 is 1, e1 is 0 and vice-versa. The OR function states that if C1 or C2 or C3 is 1, e1 is 1 else e1 is 0. The AND function states that if both C1, and C2 are 1, e1 is 1; else e1 is 0. The AND and OR functions are allowed to have any number of inputs.

Myer methodology, test cases can be designed for the Triangle Problem Step – 1: First of all we need to identify the causes and its effects. The causes designated by letter “C” are as under C1 : Side “x” is less than sum of “y” and “z” C2 : Side “y” is less than sum of “x” and “z” C3 : Side “z” is less then sum of “x” and “y” C4 : Side “x” is equal to side “y” C5 : Side “x” is equal to side “z” C6 : Side “y” is equal to side “z”

The effects designated by letter “e” are as under e1 : Not a triangle e2 : Scalene triangle e3 : Isosceles triangle. e4 : Equilateral triangle e5 : Impossible  

Step – 2: Draw the following cause-effect graph

Step – 3: Transform cause-effect graph into the following decision table

Step 4: Since there are 11 rules, we get following 11 test cases

Guidelines for Cause-Effect Functional Testing Technique: 1) If the variables refer to physical quantities, domain testing and equivalence class testing are indicated. 2) If the variables are independent, domain testing and equivalence class testing are indicated. 3) If the variables are dependent, decision table testing is indicated. 4) If the single-fault assumption is warranted, boundary value analysis (BVA) and robustness testing are indicated.  5) If the multiple-fault assumption is warranted, worst-case testing, robust worst-case testing and decision table testing are identical.  6) If the program contains significant exception handling, robustness testing and decision table testing are indicated.  7) If the variables refer to logical quantities, equivalence class testing and decision table testing are indicated.

Comparison Testing Comparison Testing means comparing your software with the better one or your Competitor. While comparison Testing we basically compare the Performance of the software. For ex if you have to do Comparison Testing of PDF converter (Desktop Based Application) then you will compare your software with your Competitor on the basis of:- 1. Speed of Conversion PDF file into Word. 2. Quality of converted file. Comparing software strength and weakness to competition products

In comparison testing, we compare the old application with new application and see whether the new application is working better than the old application or not. Testers will compare the strengths & weakness of the new product with the existing product which is already in use. Also know as parallel testing. Comparison Testing is a testing used to compare the new version of the application to the existing application which works better.

In another way, compare software weaknesses and strengths to competing products in the market. Some of the key attributes for comparing application are, 1. Features 2. Ease of use 3. Performance 4. Price 5. Usability and 6. Reliability Comparison test is a very good indicator of how competitive and useful the software product will be to the end users soon after its commercial release.