Equivalence Partitioning

Slides:



Advertisements
Similar presentations
Defect testing Objectives
Advertisements

Test Case Design Methodologies (Black-box methods)
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Software Failure: Reasons Incorrect, missing, impossible requirements * Requirement validation. Incorrect specification * Specification verification. Faulty.
Black box testing  Black box tests focus on the input/output behavior of the component  Black-box tests do not deal with the internal aspects of the.
Nov R McFadyen1 A Traditional Software Development Process Unit test Integration test System test Detailed design Architectural design Analysis.
OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Definitions and objectives Software testing strategies Software test.
Software Testing and Quality Assurance
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing 2.
Testing an individual module
Chapter 18 Testing Conventional Applications
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
Verificarea şi Validarea Sistemelor Soft Tem ă Laborator 2 Testare Black Box Dat ă primire laborator: Lab 2 Dat ă predare laborator: Lab 2,3.
System/Software Testing
Let us start from the V-Model Verification Phases Requirements analysis System Design Architecture Design Module Design Coding Validation phases Unit.
CMSC 345 Fall 2000 Unit Testing. The testing process.
CS4311 Spring 2011 Unit Testing Dr. Guoqiang Hu Department of Computer Science UTEP.
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.
Agenda Introduction Overview of White-box testing Basis path testing
Software testing techniques Software testing techniques Equivalence partitioning Presentation on the seminar Kaunas University of Technology.
CSE403 Software Engineering Autumn 2001 More Testing Gary Kimura Lecture #10 October 22, 2001.
Testing Testing Techniques to Design Tests. Testing:Example Problem: Find a mode and its frequency given an ordered list (array) of with one or more integer.
Black Box Testing Techniques Chapter 7. Black Box Testing Techniques Prepared by: Kris C. Calpotura, CoE, MSME, MIT  Introduction Introduction  Equivalence.
Software Testing Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
Black Box Testing Focuses in the functional requirements of the program It is not an alternative to white-box techniques It is a complementary approach.
Black-box Testing.
INTRUDUCTION TO SOFTWARE TESTING TECHNIQUES BY PRADEEP I.
©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.
SOFTWARE TESTING. INTRODUCTION Testing forms the first step in determining the errors in a program. It is the major quality control measure used during.
Test Case Designing UNIT - 2. Topics Test Requirement Analysis (example) Test Case Designing (sample discussion) Test Data Preparation (example) Test.
Testing and inspecting to ensure high quality An extreme and easily understood kind of failure is an outright crash. However, any violation of requirements.
CS451 Lecture 10: Software Testing Yugi Lee STB #555 (816)
Theory and Practice of Software Testing
Testing Data Structures Tao Xie Visiting Professor, Peking University Associate Professor, North Carolina State University
Theory and Practice of Software Testing Chapter 14 Presman Software Testing Tactics BLACK BOX TESTING.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Software Testing. SE, Testing, Hans van Vliet, © Nasty question  Suppose you are being asked to lead the team to test the software that controls.
Defect testing Testing programs to establish the presence of system defects.
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.
Software Testing. Software Quality Assurance Overarching term Time consuming (40% to 90% of dev effort) Includes –Verification: Building the product right,
Testing Data Structures
Functional testing, Equivalence class testing
Software Testing CS II: Data Structures & Abstraction
Software Testing.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Equivalence partitioning
Equivalence partitioning
Domain Testing Functional testing which tests the application by giving inputs and evaluating its appropriate outputs. system does not accept invalid and.
Testing Tutorial 7.
Software Testing.
Black Box Testing PPT Sources: Code Complete, 2nd Ed., Steve McConnell
Lecture on Black Box Testing
Testing the Software with Blinders on
Types of Testing Visit to more Learning Resources.
Measures of Central Tendency & Range
Testing Approaches.
CHAPTER 4 Test Design Techniques
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Chapter 14 Software Testing Techniques
Software testing.
Informatics 43 – April 28, 2016.
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
CSE403 Software Engineering Autumn 2000 More Testing
Software Testing “If you can’t test it, you can’t design it”
Black-Box Testing Techniques II
Software Testing.
TYPES OF TESTING.
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Presentation transcript:

Equivalence Partitioning Aidas Kasperavičius IFM-0/2 Equivalence Partitioning

Equivalence partitioning Equivalence partitioning is a software testing technique that divides the input and/or output data of a software unit into partitions of data from which test cases can be derived. The equivalence partitions are usually derived from the requirements specification for input attributes that influence the processing of the test object. Test cases are designed to cover each partition at least once.

What can be found using equivalence partitioning? Equivalence partitioning technique uncovers classes of errors. Testing uncovers sets of inputs that causes errors or failures, not just individual inputs.

What can be partitioned? Usually it is the input data that is partitioned. However, depending on the software unit to be tested, output data can be partitioned as well. Each partition shall contain a set or range of values, chosen such that all the values can reasonably be expected to be treated by the component in the same way (i.e. they may be considered ‘equivalent’).

Recommendations on defining partitions A number of items must be considered: All valid input data for a given condition are likely to go through the same process. Invalid data can go through various processes and need to be evaluated more carefully. For example: a blank entry may be treated differently than an incorrect entry, a value that is less than a range of values may be treated differently than a value that is greater, if there is more than one error condition within a particular function, one error may override the other, which means the subordinate error does not get tested unless the other value is valid.

Equivalence partitioning example Example of a function which takes a parameter “month”. The valid range for the month is 1 to 12, representing January to December. This valid range is called a partition. In this example there are two further partitions of invalid ranges. x < 1 1 ≤ x ≤ 12 12 < x

Equivalence partitioning example Test cases are chosen so that each partition would be tested. x < 1 1 ≤ x ≤ 12 12 < x -2 5 17

So, is it black box? The tendency is to relate equivalence partitioning to so called black box testing. However grey box technique might be applied as well.

Equivalence partitioning using grey-box technique Depending upon the input the software internally will run through different paths to perform slightly different actions according to the part of the year. Therefore middle partition is divided into two subpartitions. x < 1 1 ≤ x ≤ 6 7 ≤ x ≤ 12 -2 5 17 12 < x 8

Boundary value analysis Equivalence partitioning is not a stand alone method to determine test cases. It is usually supplemented by boundary value analysis. Boundary value analysis focuses on values on the edge of an equivalence partition or at the smallest value on either side of an edge.

Equivalence partitioning with boundary value analysis We use the same example as before. Test cases are supplemented with boundary values. x < 1 1 ≤ x ≤ 12 12 < x -2 5 17 1 12 2 11 13

Summary Pros: optimum test case size, therefore time-saving; uncovers a class of error, not just an error with specific data input. Cons: possible mistakes when defining partitions; does not test all inputs.

Is equivalence partitioning testing a black-box method? Question #1 Is equivalence partitioning testing a black-box method?

Answer Equivalence partitioning testing is usually considered as black-box method, however grey-box technique can be applied too.

How does boundary value analysis supplement equivalence partitioning? Question #2 How does boundary value analysis supplement equivalence partitioning?

Answer Boundary value analysis supplements equivalence partitioning by adding boundary value test cases.

References http://en.wikipedia.org/wiki/Equivalence_partitioning http://en.wikipedia.org/wiki/Boundary_value_analysis http://it.toolbox.com/blogs/enterprise-solutions/testing-via-equivalence-partitioning-17116 http://www.softwaretestinghelp.com/what-is-boundary-value-analysis-and-equivalence-partitioning/ http://www.scribd.com/doc/49845951/6/Equivalence-Partitioning

Thank You