CSC 509 Lecture Notes Week 6 Survey of Test Coverage and Adequacy - - PowerPoint PPT Presentation

csc 509 lecture notes week 6 survey of test coverage and
SMART_READER_LITE
LIVE PREVIEW

CSC 509 Lecture Notes Week 6 Survey of Test Coverage and Adequacy - - PowerPoint PPT Presentation

CSC509-S15-L5 Slide 1 CSC 509 Lecture Notes Week 6 Survey of Test Coverage and Adequacy CSC509-S15-L5 Slide 2 I. Administrative Matters A. This coming Wed, brief individual meetings. 1. Ill provide some concrete feedback on your project


slide-1
SLIDE 1

CSC509-S15-L5 Slide 1

CSC 509 Lecture Notes Week 6 Survey of Test Coverage and Adequacy

slide-2
SLIDE 2

CSC509-S15-L5 Slide 2

  • I. Administrative Matters
  • A. This coming Wed, brief individual meetings.
  • 1. I’ll provide some concrete feedback on your

project so far.

  • 2. The schedule is posted at 509/admin/...
slide-3
SLIDE 3

CSC509-S15-L5 Slide 3

  • II. Future Papers this Paper is Clairvoyant About
  • A. "Software Testing Research: Achievements, Chal-

lenges, Dreams", FOSE 2007

  • B. "A Survey of Combinatorial Testing",

CSUR 2011

  • C. "Software Testing with an Operational Profile:

OP Definition", CSUR 2014

slide-4
SLIDE 4

CSC509-S15-L5 Slide 4

  • III. Future and Contemporary Papers It Missed
  • A. "How Did Software Get So Reliable without

Proof?", 1996

  • B. "Search-Based Software Engineering: Trends,

Techniques and Applications", 2012

slide-5
SLIDE 5

CSC509-S15-L5 Slide 5

  • IV. Some Quotables from the Paper.
  • A. Dijkstra’s 1972 claim that "program testing can

be used to show the presence of bugs, but never their absence".

  • B. The following is still (sadly) true:

"... it is common in current software testing practice that the test processes ... stop when money or time runs out"

slide-6
SLIDE 6

CSC509-S15-L5 Slide 6

... (sadly) true, cont’d as evidenced by MS research paper from week 1: "... for many projects it may be impractical to achieve complete coverage", aka, adequacy.

slide-7
SLIDE 7

CSC509-S15-L5 Slide 7

  • V. The gist of the paper.
  • A. Learn to appreciate that
  • 1. There has been very considerable thought

given to test adequacy criteria.

  • 2. It’s backed up by well established research.
  • 3. Because it’s hard to measure in practice,

strong test adequacy remains an elusive goal.

slide-8
SLIDE 8

CSC509-S15-L5 Slide 8

  • B. Organizational structure of the paper:
  • 1. Introduction

1.1. The Notion of Test Adequacy 1.2. Uses of Adequacy Criteria 1.3. Categories of Adequacy Criteria 1.4. Organization of Article

slide-9
SLIDE 9

CSC509-S15-L5 Slide 9

Organizational Structure, cont’d

  • 2. Structural Testing

2.1. Program-Based, aka White-Box 2.2. Specification-Based, aka Black-Box 2.3. Summary

slide-10
SLIDE 10

CSC509-S15-L5 Slide 10

Organizational Structure, cont’d

  • 3. Fault-Based

3.1. Error Seeding 3.2. Mutation 3.3. Mutation Variants 3.4. Perturbation 3.5. REPLAY Model 3.6. Spec Mutation 3.7. Summary

slide-11
SLIDE 11

CSC509-S15-L5 Slide 11

Organizational Structure, cont’d

  • 4. Error-Based, Domain Analysis

4.1. Spec-Based Input Partitioning 4.2. Program-Based Input Partitioning 4.3. Boundary Analysis 4.4. Functional Analysis 4.5. Summary

slide-12
SLIDE 12

CSC509-S15-L5 Slide 12

Organizational Structure, cont’d

  • 5. Comparison of Preceding

5.1. Fault-Detecting Ability 5.2. Software Reliability 5.3. Cost 5.4. Summary

slide-13
SLIDE 13

CSC509-S15-L5 Slide 13

Organizational Structure, cont’d

  • 6. Axiomatic Assessment

6.1. Wyeuker 6.2. Parrish and Zweben 6.3. Zuh and Hall 6.4. Semantics

slide-14
SLIDE 14

CSC509-S15-L5 Slide 14

Organizational Structure, cont’d

  • 7. Conclusion
slide-15
SLIDE 15

CSC509-S15-L5 Slide 15

  • VI. A Single Figure Worth 1000 Words
  • A. Figure 7 on Page 509 in Section 5.
  • B. Question -- "How did Programs get so reliable

with barely adequate testing?"

slide-16
SLIDE 16

CSC509-S15-L5 Slide 16

  • VII. Some Technical Questions about the Paper
  • A. How does the concept of a testing oracle fit into

the subject matter of the paper?

  • B. How do the concepts of white-box and black-

box testing fit into the subject matter of the paper?

slide-17
SLIDE 17

CSC509-S15-L5 Slide 17

  • VIII. What You Should Know from CSC 30X
  • A. The list of topics at the beginning of Section 1.1.
  • B. This is as far I get in 30{7,9}.
  • C. I.e.,
  • 1. statement coverage
  • 2. branch coverage
  • 3. path coverage
  • 4. mutation adequacy
slide-18
SLIDE 18

CSC509-S15-L5 Slide 18

  • IX. How Things Have Changed Since 1997
  • A. Early in the intro section of the paper they say:

"In contrast to the constant attention ... by aca- demics, the software industry has been slow to accept test adequacy measurement."

slide-19
SLIDE 19

CSC509-S15-L5 Slide 19

  • X. How things haven’t changed.
  • A. This area of research is pretty much done.
  • B. A rare bit of stability in our field.
slide-20
SLIDE 20

CSC509-S15-L5 Slide 20

  • XI. Practicalities -- When, Where, and How Much

is Testing Theory is Necessary?

  • A. Consider in particular th mathematically formal-

ized definitions on pages 368 - 369.

  • B. Are they useful for the practicing programmer?
  • 1. As underlying concepts, absolutely.
  • 2. As formalized mathematically definitions,

very little if at all.

  • 3. They’re in the paper to guard any perceived
slide-21
SLIDE 21

CSC509-S15-L5 Slide 21

  • C. To make some use out of them,
  • 1. The notion of the stopping rule is what your

boss tells you have to achieve for coverage before you can ship your code.

  • 2. The notion of the adequacy measurement crite-

ria is (supposedly) what your boss uses to jus- tify the choice of the coverage.

slide-22
SLIDE 22

CSC509-S15-L5 Slide 22

  • XII. Practicalities -- the Rise of Coverage Tools
  • A. There’s no readily available concrete data from

20 years ago, but good (public domain) test cov- erage tools were really hard to come by.

  • B. Today they abound, which is really excellent!
slide-23
SLIDE 23

CSC509-S15-L5 Slide 23

  • XIII. What We’re Continuing to Learn
  • A. Tools are king. However solid the theory may

be, there gotsta be good usable tools before peo- ple pay attention to it.

  • B. It’s cool that mutation testing doesn’t require a

coverage measure, but unfortunately it’s way harder to develop a usable mutation tool than it is to develop a usable coverage tool.

slide-24
SLIDE 24

CSC509-S15-L5 Slide 24

What We’re Continuing to Learn, cont’d

  • C. A combination of black box and white box test-

ing makes the most sense, as opposed to use one

  • r the other exclusively.
  • D. It’s nice to have theory behind us, but pure theo-

retical beauty is not beautiful enough.