Software testing techniques Software testing techniques Equivalence partitioning Presentation on the seminar Kaunas University of Technology.

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.
Ossi Taipale, Lappeenranta University of Technology
Software Failure: Reasons Incorrect, missing, impossible requirements * Requirement validation. Incorrect specification * Specification verification. Faulty.
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
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.
Black-box Testing Lakeisha Dubose November 30, 2006 CSCI 362.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
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 Sudipto Ghosh CS 406 Fall 99 November 9, 1999.
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.
BY: GARIMA GUPTA MCA FINAL YEAR WHAT IS SOFTWARE TESTING ? SOFTWARE TESTING IS THE PROCESS OF EXECUTING PROGRAMS OR SYSTEM WITH THE INTENT.
System/Software Testing
Dynamic Black-Box Testing Part 2
White-box Testing Black-box Testing Extensions
Let us start from the V-Model Verification Phases Requirements analysis System Design Architecture Design Module Design Coding Validation phases Unit.
Testing by Splitting Data Into Equivalence Classes Telerik Software Academy Software Quality Assurance.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Testing phases. Test data Inputs which have been devised to test the system Test cases Inputs to test the system and the predicted outputs from these.
Prof. Mohamed Batouche Software Testing.
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.
Software Testing The process of operating a system or component under specified conditions, observing and recording the results, and making an evaluation.
Agenda Introduction Overview of White-box testing Basis path testing
CS451 – Software Testing Technologies Blackbox Testing Equivalence Partitioning.
CSE403 Software Engineering Autumn 2001 More Testing Gary Kimura Lecture #10 October 22, 2001.
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.
CS 217 Software Verification and Validation Week 7, Summer 2014 Instructor: Dong Si
Testing Techniques Software Testing Module ( ) Dr. Samer Hanna.
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
SOFTWARE TESTING. Introduction Software Testing is the process of executing a program or system with the intent of finding errors. It involves any activity.
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.
1 © 2011 Professor W. Eric Wong, The University of Texas at Dallas Requirements-based Test Generation for Functional Testing W. Eric Wong Department of.
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.
Equivalence Partitioning
Testing Data Structures
Functional testing, Equivalence class testing
Equivalence partitioning
Equivalence partitioning
Software Testing.
Lecture on Black Box Testing
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Chapter 14 Software Testing Techniques
Software testing.
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Software Testing “If you can’t test it, you can’t design it”
Software Testing.
TYPES OF TESTING.
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Presentation transcript:

Software testing techniques Software testing techniques Equivalence partitioning Presentation on the seminar Kaunas University of Technology

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.

Equivalence partitioning technique uncovers classes of errors. Testing uncovers sets of inputs that causes errors or failures, not just individual inputs.

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’).

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.

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 < 11 ≤ x ≤ 1212 < x

Test cases are chosen so that each partition would be tested. x < 11 ≤ x ≤ 1212 < x

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

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 < 11 ≤ x ≤ 6 7 ≤ x ≤ < x 8

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.

We use the same example as before. Test cases are supplemented with boundary values. x < 11 ≤ x ≤ 1212 < x

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?

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?

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

   equivalence-partitioning equivalence-partitioning  analysis-and-equivalence-partitioning/ analysis-and-equivalence-partitioning/  Partitioning Partitioning