Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Testing Testing is the process of exercising a program with the specific intent of finding errors prior to delivery to the end user.

Similar presentations


Presentation on theme: "Software Testing Testing is the process of exercising a program with the specific intent of finding errors prior to delivery to the end user."— Presentation transcript:

1 Software Testing Testing is the process of exercising a program with the specific intent of finding errors prior to delivery to the end user.

2 What Testing Shows errors requirements conformance performance an indication of quality

3 Who Tests the Software? developer independent tester Understands the system but, will test "gently" and, is driven by "delivery" Must learn about the system, but, will attempt to break it and, is driven by quality

4 Exhaustive Testing loop < 20 X There are 10 possible paths! If we execute one test per millisecond, it would take 3,170 years to test this program!! 14

5 Selective Testing loop < 20 X Selected path

6 Software Testing Methods Strategies white-box methods black-box methods

7 Test Case Design "Bugs lurk in corners and congregate at boundaries..." Boris Beizer OBJECTIVE CRITERIA CONSTRAINT to uncover errors in a complete manner with a minimum of effort and time

8 White-Box Testing... our goal is to ensure that all statements and conditions have been executed at least once...

9 Why Cover? logic errors and incorrect assumptions are inversely proportional to a path's execution probability we often believe that a path is not that a path is not likely to be executed; in fact, reality is often counter intuitive typographical errors are random; it's likely that untested paths will contain some

10 Black-Box Testing requirements events input output

11 11 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Integration Testing Strategies Options: the “big bang” approachthe “big bang” approach an incremental construction strategyan incremental construction strategy Ch18

12 12 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 The Debugging Process test cases results Debugging suspectedcauses identifiedcauses corrections regressiontests new test cases Ch18

13 13 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Debugging: Final Thoughts Don't run off half-cocked, think about the about the symptom you're seeing. Use tools (e.g., dynamic debugger) to gain (e.g., dynamic debugger) to gain more insight. If at an impasse, get help get help from someone else. from someone else. Be absolutely sure to conduct regression tests when you do "fix" the bug. 1. 2. 3. 4. Ch18


Download ppt "Software Testing Testing is the process of exercising a program with the specific intent of finding errors prior to delivery to the end user."

Similar presentations


Ads by Google