Exam 1 Review Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 15.

Slides:



Advertisements
Similar presentations
White-Box Testing Techniques IV
Advertisements

CMSC 345, Version 11/07 SD Vick from S. Mitchell 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.
Software Engineering Lecture 12 Software Testing Techniques 1.
Software Testing & Strategies
Chapter 13 & 14 Software Testing Strategies and Techniques
Equivalence Class Testing
Software Testing Sudipto Ghosh CS 406 Fall 99 November 9, 1999.
Topics in Software Dynamic White-box Testing Part 2: Data-flow Testing
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.
Black-Box Testing Techniques I Software Testing Lecture 4.
Course Outline Traditional Static Program Analysis –Theory –Classic analysis and applications Points-to analysis, CHA, RTA –The Soot analysis framework.
White-Box Testing Techniques II Originals prepared by Stephen M. Thebaut, Ph.D. University of Florida Dataflow Testing.
Lecture 11 Testing and Debugging SFDV Principles of Information Systems.
Black-Box Testing Techniques II Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 5.
Software Testing Testing types Testing strategy Testing principles.
Software Testing The process of operating a system or component under specified conditions, observing and recording the results, and making an evaluation.
Black-Box Testing Techniques I
Unit Testing 101 Black Box v. White Box. Definition of V&V Verification - is the product correct Validation - is it the correct product.
INTRUDUCTION TO SOFTWARE TESTING TECHNIQUES BY PRADEEP I.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering Foundations.
CS 217 Software Verification and Validation Week 7, Summer 2014 Instructor: Dong Si
Stephen M. Thebaut Exam 2 Notes Slide 1 Exam 2 Notes Stephen M. Thebaut, Ph.D. University of Florida CEN 5035 Software Engineering.
1 Program Testing (Lecture 14) Prof. R. Mall Dept. of CSE, IIT, Kharagpur.
1 Introduction to Software Testing. Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Chapter 1 2.
Case Study: Black-Box Testing Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 6.1.
CSC 480 Software Engineering Testing - I. Plan project Integrate & test system Analyze requirements Design Maintain Test units Implement Software Engineering.
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.
CS451 Lecture 10: Software Testing Yugi Lee STB #555 (816)
Exam 1 Notes Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 15.
Stephen M. Thebaut Exam 1 Notes Slide 1 Exam 1 Notes Stephen M. Thebaut, Ph.D. University of Florida CEN 5035 Software Engineering.
©Stephen Thebaut 2008 Quiz 1 Notes Slide 1 Quiz 1 Notes Advanced Software Engineering Summer ’08.
White-Box Testing Techniques I Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 7.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Dynamic White-Box Testing What is code coverage? What are the different types of code coverage? How to derive test cases from control flows?
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
1 Software Testing. 2 What is Software Testing ? Testing is a verification and validation activity that is performed by executing program code.
Testing Integral part of the software development process.
Software Specification
White-Box Testing Techniques IV
White-Box Testing Techniques IV
Software Engineering (CSI 321)
Case Study: Black-Box Testing
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Types of Testing Visit to more Learning Resources.
White-Box Testing Techniques II
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Software testing strategies 2
White-Box Testing Techniques II
Black-Box Testing Techniques III
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Software Specification
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.
White-Box Testing Techniques I
Black-Box Testing Techniques III
Black-Box Testing Techniques II
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Black-Box Testing Techniques II
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Presentation transcript:

Exam 1 Review Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 15

Coverage Lectures 1-14 Readings 1-6: 1.Myers, The Art of Software Testing 2.Kit, Software Testing in the Real World 3.Gause & Weinberg, Making Meetings Work… 4.Fagan, Design and Code Inspections… 5.Grady & Van Slack, Key Lessons in Achieving Widespread Inspection Use 6.Sauer, et al., The Effectiveness of Software Development Technical Reviews…

Coverage (cont’d) Black-Box Testing Case Study Problem Sets 1-4 Topics –Intro to V&V Techniques and Principles –Requirements and Specifications –Black-Box Test Case Design Strategies –White-Box Test Case Design Strategies –Integration and Higher Level Testing

Coverage (cont’d) Topics (cont’d) –Testing Object-Oriented Software –Reviews and Inspections –Testing Tools

Other Resources Practice Exams Lesson Plans (including Self-Check Quiz Questions)

Ground Rules and Format You will have 90 minutes to complete the exam. No notes, books, calculators, or PDA’s are allowed. All answers should be given in the spaces provided on the exam only.

Ground Rules and Format (cont’d) Question format may be short answer, matching, true/false, fill-in-the-blank, proofs, etc. The point-value of each question will be given.

Exam Procedures for EDGE Students Proctors should schedule a single exam time during normal working hours for all students at each site. If this is not possible, exams may be scheduled outside normal working hours (e.g., in the evening). Exams are made available to proctors the same day they are administered to on- campus students. Proctors should return ORIGINAL exams directly to the instructor, preferably via overnight delivery.

Sample Problems 1.(4 pts.) According to Grady & Van Slack ("Key Lessons in Achieving Widespread Inspection Use"), a Chief Moderator "owns" the inspection process within his/her organization. What specific responsibilities do Grady & Van Slack identify as being associated with this "ownership"?

Sample Problems (cont’d) 2.(3 pts.) Even unimpaired, conscientious testers who visually compare actual with expected test results have a tendency to overlook differences. (This is especially true when testing in the the Spring!) Briefly explain why this is so. What specific techniques were discussed in class for countering this tendency?

Sample Problems (cont’d) 3.(4 pts.) In addition to the "top-down" and "bottom-up" incremental integration testing approaches, 3 "hybrid" approaches were discussed in class. Describe 2 of these.

Sample Problems (cont’d) 4.Consider the following subroutine and its control flow graph. (not shown) a.(5 pts.) List all the Def-C-Use pairs for variable "B". b.(5 pts.) List all the Def-P-Use pairs for variable "A". c.(2 pts.) How many paths are associated with the Def-C-Use pair (1,4) for variable A?

Sample Problems (cont’d) 4.(cont’d) d.(3 pts.) How many of these are du- paths? e.(3 pts.) Consider a test case with execution path. Circle all of the following coverage criteria (not shown) that would be met by executing this test case…

Sample Problems (cont’d) 4.(cont’d) f.(3 pts.) Consider a 2nd test case with execution path. Circle all of the following coverage criteria (not shown) that would be met by executing BOTH test cases… g.(10 pts.) Give the path condition for path in terms of the initial symbolic values of A and B for this subroutine. Show ALL path condition conjuncts.

Sample Problems (cont’d) 5.(5 pts.) Indicate True or False for each of the following statements related to Equivalence Partitioning. a.The technique is also known as “output space partitioning.” b.When dealing with complex, multiple- input problems, a means for identi- fying appropriate COMBINATIONS OF EQUIVALENCE CLASSES is necessary to partition the input space.

Sample Problems (cont’d) 5.(cont’d) c.Cause-Effect Analysis can be viewed as a logical extension of Equivalence Partitioning. d.The specification fragment, "HOURS will range in value from 0 to 40; for HOURS 20, output 'HIGH'," (where HOURS is a program input) suggests ONE valid and possibly ONE or TWO invalid equivalence classes.

Sample Problems (cont’d) 5.(cont’d) e.The technique is predicated on the assumption that every element of an equivalence class causes the same program path to be executed.

Sample Problems (cont’d) 6.Consider the following Cause-Effect graph fragment: (not shown) a.(3 pts.) How many test cases would be required to achieve AFCCV (all feasible combinations of Cause values) coverage for this model? b.(2 pts.) How many test cases would be required to achieve AEMC (all effects covered with the minimum number of test cases) coverage?

Sample Problems (cont’d) 6.(cont’d) c.(8 pts.) How many test cases would be required to cover all feasible combinations of Causes that, based on the graph, will result in Effect E1 being true? In effect E3 being true? d.(4 pts.) How many test cases would be required to cover all feasible combinations of Causes that, based on the graph, will result in Effect E1 being true, SUBJECT TO THE CULLING RULES considered in class? In effect E3 being true?

Sample Problems (cont’d) 7.Recall the specification of pow(x,y), which computes the value of x raised to the power y, xy, from the Black-Box Testing Case Study. a.(3 pts.) It was noted that xy really MEANS (or represents) different functions depending on the input "region" (point, line, etc.) in the x,y plane. If y is an integer <= -1 and x is a non-zero number, what "function" does xy represent?

Sample Problems (cont’d) b.(4 pts.) What should pow(x,y) return if the mathematical value of xy is greater than zero but less than +TINY_VAL? What should the MATHERR function set “errno” to in this case? c.(4 pts.) Under what circumstances would a call to pow(x,y) result in MATHERR setting “errno” to OVERFLOW? Be specific.

Sample Problems (cont’d) 8.(3 pts.) Glenford Myers ("The Psychology and Economics of Program Testing") argues that the most important considerations in software testing are issues of psychology, and he identifies a set of testing principles or guidelines in this vein. The justification for one of these is expressed via the following analogy:

Sample Problems (cont’d) "As many homeowners know, removing wall paper...is not easy, but it is almost unbearably depressing if you, rather than someone else, originally installed it." What principle or guideline was he justifying?

Sample Problems (cont’d) 9.(9 pts.) Give the TFT path condition for the program fragment below (not shown) in terms of the initial symbolic values of A and B. CLEARLY ILLUSTRATE THE USE OF SYMBOLIC EVALUATION IN YOUR SOLUTION. 10.(10 pts.) Using the program fragment below (not shown), PROVE that All- Uses coverage and Condition coverage are independent.

Sample Problems (cont’d) 11.(9 pts.) Match the descriptions below to the single most appropriate of the following testing related terms. A.integration testing B.system level test C.system test acceptance testing D.functional testing E.gray-box testing F.acceptance testing G.Alpha testing H.structural testing I.causal analysis J.unit level test K.benchmarking L.component level test M.regression testing N.product level test O.post-test analysis P.Beta testing

Sample Problems (cont’d) __ testing conducted to ensure that a system is "ready" for the system-level test phase __ testing undertaken by end-users within the user environment prior to general release __ techniques include Boundary Value Analysis and Intuition and Experience __ general practice of recording and comparing indices of performance, quality, cost, etc. __ testing undertaken as units are combined to form components

Sample Problems (cont’d) __ identifying the sources of errors and approaches to eliminate future occurrences __ reviewing the results of a testing activity with the intent to improve its effectiveness __ techniques include Boundary Value Analysis and Fault-Based testing __ end-user testing undertaken within the development environment prior to general release

Exam 1 Review Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 15