Software Testing Techniques Fundamental Thoughts About Testing.

Slides:



Advertisements
Similar presentations
Unit Testing in the OO Context(Chapter 19-Roger P)
Advertisements

Software Engineering, COMP201 Slide 1 Software Testing Lecture 28 & 29.
1 CODE TESTING Principles and Alternatives. 2 Testing - Basics goal - find errors –focus is the source code (executable system) –test team wants to achieve.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
Chapter 17 Software Testing Techniques
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing 2.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Defect testing l Testing programs to establish the presence of system defects.
Software Engineering Software Testing.
Testing an individual module
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
Chapter 18 Testing Conventional Applications
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.
- Testing programs to establish the presence of system defects -
1 Software Testing and Quality Assurance Lecture 5 - Software Testing Techniques.
Software Engineering Lecture 12 Software Testing Techniques 1.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
Chapter 13 & 14 Software Testing Strategies and Techniques
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
1 COSC 4406 Software Engineering COSC 4406 Software Engineering Haibin Zhu, Ph.D. Dept. of Computer Science and mathematics, Nipissing University, 100.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Object-Oriented Testing CIS 375 Bruce R. Maxim UM-Dearborn.
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.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Testing Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
CS4311 Spring 2011 Unit Testing Dr. Guoqiang Hu Department of Computer Science UTEP.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Chapter 20 Software Testing.
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.
Testing Strategy Big Picture Planning for Software Testing.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Software Defect Testing Testing programs to establish the presence of system defects.
1 Chapter 6 Software Testing Techniques. 2 Testability Operability—it operates cleanly Operability—it operates cleanly Observability—the results of each.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
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.
©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 Construction Lecture 18 Software Testing.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 14a: Software Testing Techniques Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Testing Techniques Software Testing Module ( ) Dr. Samer Hanna.
1 Program Testing (Lecture 14) Prof. R. Mall Dept. of CSE, IIT, Kharagpur.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Defect testing l Testing programs to establish the presence of system defects.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
CS451 Lecture 10: Software Testing Yugi Lee STB #555 (816)
Chapter 24 객체지향 응용프로그램 테스팅 Testing Object-Oriented Applications 임현승 강원대학교 Revised from the slides by Roger S. Pressman and Bruce R. Maxim for the book.
Theory and Practice of Software Testing
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.
Chapter : 18 Testing Conventional Applications
1 SYS366 Week 1 - Lecture 1 Introduction to Systems.
1 Phase Testing. Janice Regan, For each group of units Overview of Implementation phase Create Class Skeletons Define Implementation Plan (+ determine.
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.
VI SEM CSE UNIT IV SOFTWARE ENGINEERING PROJECT MANAGEMENT TESTING STRATEGIES By Mr. Vaibhav V. Bhujade DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING DMIETR,
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 Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
SOFTWARE TESTING SOFTWARE TESTING Presented By, C.Jackulin Sugirtha-10mx15 R.Jeyaramar-10mx17K.Kanagalakshmi-10mx20J.A.Linda-10mx25P.B.Vahedha-10mx53.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
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.
Software Testing.
Software Testing Techniques
Chapter 13 & 14 Software Testing Strategies and Techniques
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Chapter 14 Software Testing Techniques
Software Testing Techniques
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Chapter 13 & 14 Software Testing Strategies and Techniques 1 Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Presentation transcript:

Software Testing Techniques Fundamental Thoughts About Testing

Testing Goal The number one goal of testing is to find errors in your software. Goods tests: Have a high probability of finding an error Uncover a class of errors (without redundancy) i.e., a well-designed test exhibits any of several types of errors (perhaps using different test case data) Find errors with little effort

White-Box Testing A.k.a: Glass-box testing Any of a type of test that uses knowledge of a modules control structures to derive test cases. Generally applied during unit testing. Types Basis-Path Testing: i.e., test all independent paths in the program Condition Testing: i.e., test T/F results of a condition Data Flow Testing: i.e., test path in program based on affect on given variable or variables Loop Testing: i.e., test iteration (and non-iteration of loops) Fault-Based Testing: i.e., test that code where it is plausible that there are faults. For example, complex code (difficult equations, recursion, nested loops, pointer manipulations, storage allocation) or long interaction sequences.

Black-Box Testing Any of a type of tests that restrict test cases to that which can be derived from examining a modules interface specifications Generally applied during integration and system testing Types Equivalence Partitioning: i.e., attempts to classify the input domain of test cases into equivalence classes based on how the module is perceived to act on that input Boundary Value Analysis: i.e., builds test cases from boundary conditions in specification Orthogonal Array Testing: i.e., builds test cases by varying all input parameters simultaneously to cover a “wide” a spectrum of the input domain as possible in a few test cases. Scenario-based Testing: i.e., builds test cases based on an expected user profile. Random Sequence Testing: i.e., builds test cases from random (likely in-allowable) sequences of operations.

Testing Addendum Test GUIs using a profile of your users Expect novice users to hit buttons out of sequence or fill in forms with erroneous data Expect advanced users to move quickly through the UI, get impatient with slow response, and test shortcuts and macros Test Documentation Operate your application based on documentation in the User’s or Installation Manual. Make sure the application and documentation are in agreement Test Help Facilities As the writer of the application, you typically don’t need help; however, your users will. Test that your instructions work. Test the help facilities with novice users to see if the instructions communicate what you intend to communicate

Conventional vs. OO Testing Similarities White- and black-box techniques apply for both conventional and OO development. Differences Conventional mindset tends to be to test function OO mindset tends to be to test interoperability Keep in mind, the set of interoperable objects may change according to the thread of use. OO methods may be inherited, so they may need to be tested again in their new context. OO testing needs to recognize that objects typically have an internal state that can influence the operation of a member function.

Additional Points of Emphasis Quote in sidebar pg 492 7/e (at bottom of pg 399 6/e) Key point pg 498 7/e, pg 406 6/e Testing client/server architectures--- isolate test conditions as much a possible (pgs /e, pgs /e) Errors in a WebApp Environment, new for 7/e (pg 531 7/e)