Software testing techniques Software testing techniques Object-oriented software testing Presentation on the seminar Kaunas University of Technology.

Slides:



Advertisements
Similar presentations
Object-Oriented Application Frameworks Much of the cost and effort stems from the continuous re- discovery and re-invention of core concepts and components.
Advertisements

Chapter 10 Software Testing
Presentation by Prabhjot Singh
4. Object-Oriented Programming Procedural programming Structs and objects Object-oriented programming Concepts and terminology Related keywords.
Testing and Quality Assurance
Systems Analysis and Design 8th Edition
OBJECT ORIENTED PROGRAMMING M Taimoor Khan
Solutions to Review Questions. 4.1 Define object, class and instance. The UML Glossary gives these definitions: Object: an instance of a class. Class:
Unified Modeling Language
Object-Oriented Analysis and Design
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Object-oriented Testing SIM3302. Objectives To cover the strategies and tools associated with object oriented testing  Analysis and Design Testing 
Programming Language Paradigms: summary. Object-oriented programming Objects are the fundamental building blocks of a program. Interaction is structured.
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
Object-oriented Programming Concepts
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
Object Oriented Concepts. Movement toward Objects Instead of data-oriented or process-oriented Analysis, many firms are now moving to object-oriented.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
C++ fundamentals.
Object-Oriented Analysis and Design
The Design Discipline.
12.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
1 Object-Oriented Testing CIS 375 Bruce R. Maxim UM-Dearborn.
Testing. What is Testing? Definition: exercising a program under controlled conditions and verifying the results Purpose is to detect program defects.
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
MT311 Java Application Development and Programming Languages Li Tak Sing( 李德成 )
O BJECT O RIENTATION F UNDAMENTALS Prepared by: Gunjan Chhabra.
An Object-Oriented Approach to Programming Logic and Design
Chapter 8 – Software Testing Lecture 1 1Chapter 8 Software testing The bearing of a child takes nine months, no matter how many women are assigned. Many.
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. What is Software Testing? Definition: 1.is an investigation conducted to provide stakeholders with information about the quality of.
Unified Modeling Language, Version 2.0
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Introduction to Software Testing. Types of Software Testing Unit Testing Strategies – Equivalence Class Testing – Boundary Value Testing – Output Testing.
Systems Analysis and Design in a Changing World, 3rd Edition
Systems Analysis & Design 7 th Edition Chapter 5.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Testing Techniques Software Testing Module ( ) Dr. Samer Hanna.
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Learners Support Publications Object Oriented Programming.
1.
SOFTWARE TESTING. INTRODUCTION Testing forms the first step in determining the errors in a program. It is the major quality control measure used during.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Chapter 24 객체지향 응용프로그램 테스팅 Testing Object-Oriented Applications 임현승 강원대학교 Revised from the slides by Roger S. Pressman and Bruce R. Maxim for the book.
1 Lecture 15: Chapter 19 Testing Object-Oriented Applications Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 14b: Software Testing Techniques Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Static and Integration Testing. Static Testing vs Dynamic Testing  To find defects  This testing includes verification process  without executing.
OBJECT-ORIENTED TESTING. TESTING OOA AND OOD MODELS Analysis and design models cannot be tested in the conventional sense. However, formal technical reviews.
Software Testing. Purpose: Find errors! not prove that the program does not have them Types of tests: Unit Test Integration Test Function Test Load Test.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Testing Tutorial 7.
The Movement To Objects
Sections Basic Concepts of Programming
Object-oriented software testing
Levels of testing.
Systems Analysis and Design With UML 2
Chapter 8 – Software Testing
Chapter 24 Testing Object-Oriented Applications
Chapter 19 Testing Object-Oriented Applications
Chapter 19 Testing Object-Oriented Applications
TYPES OF TESTING.
Chapter 7 Software Testing.
Presentation transcript:

Software testing techniques Software testing techniques Object-oriented software testing Presentation on the seminar Kaunas University of Technology

Theme overview Object-oriented software testing purposes Different testing levels Testing methods Benefits of object-oriented software testing Object-oriented software testing issues

The purposes of object-oriented software testing It is used for testing object-oriented systems. It is necessary for testing system objects interactions and behavior in various situations. It tests interfaces of the system components that are put together.

Object-oriented software testing levels Testing an object Testing sets of objects Testing an entire system

Testing an object (unit testing) Unit is a smallest component that can be compiled and executed. There are two options for selecting single unit in object- oriented software: –treat each class as unit; –treat each method within a class as unit. Unit is normally a component which is only assigned to one programmer.

Single unit testing in object-oriented software Smallest testable unit is the encapsulated class. Test each operation as part of a class. Identify all object attributes. Test all object states behavior. Inheritance leads to a lot of difficulty for testing classes, because of lack of information localization.

Testing sets of objects (integration testing) Integration testing is the testing of the interaction between two or more object-oriented components by sending a message. Integration testing assumes that unit testing has been done on the components and defects have been removed. The goal of integration testing is to find defects that arise when object-oriented components interact with each other in an incorrect way.

Testing an entire system Black box testing –Creating test cases by using user requirements or specifications. White box testing –Creating test cases by using software code.

Testing methods Use cases testing Random testing Partitioning testing

Use cases testing Based on use cases. Focus on user interaction, but not on system interaction. Describes a specific user needs.

Random testing Identify operations applicable to a class. Define constraints on operations use. Identify a minimum test sequence. Generate a variety of random valid test sequences.

Partitioning testing State-based partitioning: –Categorize and test operations based on their ability to change the state of a class. Attribute-based partitioning: –Categorize and test operations based on the attributes that they use. Category-based partitioning: –Categorize and test operations based on the generic function each performs (state changing, queries, termination).

Object-oriented software testing benefits Allows to test individual software objects and their interaction. Allows to detect errors in the initial phase of system implementation. Allows easily automated testing with special tools.

Object-oriented software testing problems Integration testing may add a large cost (time resources) to software development process. Polymorphism - attribute may have more than one set of values and an operation may be implemented by more than one method. Inheritance - object may have more than one super class. Encapsulation - information hiding.

Questions Object-oriented software testing levels? Benefits of object-oriented software testing? Drawbacks of object-oriented software testing?