Verificarea şi Validarea Sistemelor Soft Tem ă Laborator 2 Testare Black Box Dat ă primire laborator: Lab 2 Dat ă predare laborator: Lab 2,3.

Slides:



Advertisements
Similar presentations
Lecture 2: testing Book: Chapter 9 What is testing? Testing is not showing that there are no errors in the program. Testing cannot show that the program.
Advertisements

Defect testing Objectives
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.
Annoucements  Next labs 9 and 10 are paired for everyone. So don’t miss the lab.  There is a review session for the quiz on Monday, November 4, at 8:00.
Test Case Design: Strategies, Techniques & Models Robin Brennan, Senior Consultant Quality Assurance Institute.
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
Creator: ACSession No: 13 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 Testing - Techniques CSE300 Advanced Software Engineering.
1 CODE TESTING Principles and Alternatives. 2 Testing - Basics goal - find errors –focus is the source code (executable system) –test team wants to achieve.
OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Definitions and objectives Software testing strategies Software test.
Software Testing. Testing Levels (McConnel) Unit Testing Single programmer involved in writing tested code Component Testing Multiple programmers involved.
Software Testing and Quality Assurance
IMSE Week 18 White Box or Structural Testing Reading:Sommerville (4th edition) ch 22 orPressman (4th edition) ch 16.
Testing an individual module
1 Software Testing and Quality Assurance Lecture 5 - Software Testing Techniques.
OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Chapter 9.3 Software Testing Strategies.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
Software Systems Verification and Validation Laboratory Assignment 3
Software Testing (Part 2)
CMSC 345 Fall 2000 Unit Testing. The testing process.
1 Testing Course notes for CEN Outline  Introduction:  terminology and philosophy  Factors that influence testing  Testing techniques.
1 Phase Testing. \ 2 Overview of Implementation phase Create Class Skeletons Define Implementation Plan (+ determine subphases) Define Coding Standards.
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.
University of Palestine software engineering department Testing of Software Systems Test-Case Design instructor: Tasneem Darwish.
CS /51 Illinois Institute of Technology CS487 Software Engineering Software Testing Techniques Mr. David A. Lash.
Software Testing Testing types Testing strategy Testing principles.
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.
Testing Methods Carl Smith National Certificate Year 2 – Unit 4.
Introduction to Software Testing. Types of Software Testing Unit Testing Strategies – Equivalence Class Testing – Boundary Value Testing – Output Testing.
Software testing techniques Software testing techniques Equivalence partitioning Presentation on the seminar Kaunas University of Technology.
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.
Unit Testing 101 Black Box v. White Box. Definition of V&V Verification - is the product correct Validation - is it the correct product.
Black-box Testing.
INTRUDUCTION TO SOFTWARE TESTING TECHNIQUES BY PRADEEP I.
BLACK BOX TESTING K.KARTHIKEYAN. Black box testing technique Random testing Equivalence and partitioning testing Boundary value analysis State transition.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Black Box Testing : The technique of testing without having any knowledge of the interior workings of the application is Black Box testing. The tester.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
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.
1. Black Box Testing  Black box testing is also called functional testing  Black box testing ignores the internal mechanism of a system or component.
Dynamic Testing.
1 Phase Testing. Janice Regan, For each group of units Overview of Implementation phase Create Class Skeletons Define Implementation Plan (+ determine.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
Software Testing. SE, Testing, Hans van Vliet, © Nasty question  Suppose you are being asked to lead the team to test the software that controls.
1 Software Testing. 2 What is Software Testing ? Testing is a verification and validation activity that is performed by executing program code.
Testing 1. Aims To understand the purpose of testing To understand the different test strategies To explore the four types of test data Have a understanding.
Testing Integral part of the software development process.
Software Testing. Software Quality Assurance Overarching term Time consuming (40% to 90% of dev effort) Includes –Verification: Building the product right,
Functional testing, Equivalence class testing
Software Engineering (CSI 321)
Chapter 17 Software Testing Techniques
Software Testing.
Rekayasa Perangkat Lunak Part-13
Software Testing.
Software Engineering (CSI 321)
CS5123 Software Validation and Quality Assurance
Chapter 13 & 14 Software Testing Strategies and Techniques
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Software Testing (Lecture 11-a)
Chapter 14 Software Testing Techniques
Software testing.
Chapter 10 – 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”
TYPES OF TESTING.
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Software Testing.
Presentation transcript:

Verificarea şi Validarea Sistemelor Soft Tem ă Laborator 2 Testare Black Box Dat ă primire laborator: Lab 2 Dat ă predare laborator: Lab 2,3

Verificarea şi Validarea Sistemelor Soft The key issue of testing becomes: What subset of all possible test cases has the highest probability of detecting the most errors? Testing Test-case design testing - cannot guarantee the absence of all errors. test-case design is important because complete testing is impossible.

Verificarea şi Validarea Sistemelor Soft Testing Black Box Testing Equivalence partitioning. Boundary-value analysis. Cause-effect graphing. Error guessing. White Box Testing Statement coverage. Decision coverage. Condition coverage. Decision-condition coverage. Multiple-condition coverage.

Identifying the Equivalence Classes The equivalence classes are identified by taking each input condition (usually a sentence or phrase in the specification) and partitioning it into two or more groups. Two types of equivalence classes are identified: valid equivalence classes represent valid inputs to the program; invalid equivalence classes represent all other possible states of the condition (i.e., erroneous input values). Identifying the Test Cases The process is as follows: Assign a unique number to each equivalence class. Until all valid equivalence classes have been covered by (incorporated into) test cases, write a new test case covering as many of the uncovered valid equivalence classes as possible. Until your test cases have covered all invalid equivalence classes, write a test case that covers one, and only one, of the uncovered invalid equivalence classes. Verificarea şi Validarea Sistemelor Soft Equivalence partitioning Test-case design by equivalence partitioning proceeds in two steps:  identifying the equivalence classes;  defining the test cases.

Verificarea şi Validarea Sistemelor Soft Equivalence partitioning (2) Given an input or external condition, identifying the equivalence classes is largely a heuristic process. A set of guidelines is as follows: 1.If an input condition specifies a range of values (“the item count can be from a to b”), identify one valid equivalence class (a b). 2. If an input condition specifies the number of values (“one through six owners can be listed for the automobile”), identify one valid equivalence class and two invalid equivalence classes (no owners and more than six owners). 3.If an input condition specifies a set of input values and there is reason to believe that the program handles each differently (“type of vehicle must be BUS, TRUCK, TAXICAB, PASSENGER, or MOTORCYCLE”), identify a valid equivalence class for each and one invalid equivalence class (“TRAILER,” for example). 4.If an input condition specifies a “must be” situation, such as “first character of the identifier must be a letter,” identify one valid equivalence class (it is a letter) and one invalid equivalence class (it is not a letter).  If there is any reason to believe that the program does not handle elements in an equivalence class identically, split the equivalence class into smaller equivalence classes.

Software System Verification and Validation Boundary-Value Analysis Boundary conditions are those situations directly on, above, and beneath the edges of input equivalence classes and output equivalence classes. Boundary-value analysis differs from equivalence partitioning in two respects:  Rather than selecting any element in an equivalence class as being representative, boundary-value analysis requires that one or more elements be selected such that each edge of the equivalence class is the subject of a test.  Rather than just focusing attention on the input conditions (input space), test cases are also derived by considering the result space (output equivalence classes). A set of guidelines is as follows: 1.If an input condition specifies a range of values, write test cases for the ends of the range, and invalid-input test cases for situations just beyond the ends. 2.If an input condition specifies a number of values, write test cases for the minimum and maximum number of values and one beneath and beyond these values. 3.Use guideline 1 for each output condition. 4.Use guideline 2 for each output condition. 5.If the input or output of a program is an ordered set, focus attention on the first and last elements of the set. 6.In addition, use your ingenuity to search for other boundary conditions. The important difference between boundary-value analysis and equivalence partitioning is that boundary-value analysis explores situations on and around the edges of the equivalence partitions.

Software System Verification and Validation Disadvantages of Black Box Testing only a small number of possible inputs can actually be tested, to test every possible input stream would take nearly forever; without clear and concise specifications, test cases are hard to design; there may be unnecessary repetition of test inputs if the tester is not informed of test cases the programmer has already tried; may leave many program paths untested; cannot be directed toward specific segments of code which may be very complex (and therefore more error prone); most testing related research has been directed toward glass box testing. Advantages of Black Box Testing more effective on larger units of code than glass box testing; tester needs no knowledge of implementation, including specific programming languages; tester and programmer are independent of each other; tests are done from a user's point of view; will help to expose any ambiguities or inconsistencies in the specifications; test cases can be designed as soon as the specifications are complete.

Verificarea şi Validarea Sistemelor Soft Temă Laborator 2 Testare Black Box Dată primire laborator: Lab 2 Dată predare laborator: Lab 2,3