Wk 11 glass box testing flow graphs test coverage l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 23

Wk 11 Glass Box Testing, Flow Graphs, Test Coverage PowerPoint PPT Presentation


  • 120 Views
  • Uploaded on
  • Presentation posted in: General

Wk 11 Glass Box Testing, Flow Graphs, Test Coverage. SW Engineering of Standalone Programs. Basis set for statement coverage testing. Draw the flow graph Count the bounded regions including the “outside region”

Download Presentation

Wk 11 Glass Box Testing, Flow Graphs, Test Coverage

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Wk 11 glass box testing flow graphs test coverage l.jpg

Wk 11 Glass Box Testing, Flow Graphs, Test Coverage

SW Engineering of Standalone Programs

SW Eng Standalone Progs, Univ of Colorado Boulder


Basis set for statement coverage testing l.jpg

Basis set for statement coverage testing

  • Draw the flow graph

  • Count the bounded regions including the “outside region”

    • N is the number of linearly independent paths through the program control structure

    • A linearly independent path includes one node of the control flow graph not contained in any other

    • Create a basis set of linearly independent paths

  • Prepare test cases to force execution of each path in the basis set.

  • Execution of these test cases yields ______ coverage

SW Eng Standalone Progs, Univ of Colorado Boulder


Flow graph mccabe s is 25 l.jpg

Flow Graph:McCabe’s is25

SW Eng Standalone Progs, Univ of Colorado Boulder


Flow graph revelations l.jpg

Flow Graph Revelations

SW Eng Standalone Progs, Univ of Colorado Boulder


Complexity impact l.jpg

Complexity impact

SW Eng Standalone Progs, Univ of Colorado Boulder


Uses of test coverage measurement l.jpg

Uses of Test Coverage Measurement

  • Measure test suite completeness

  • Identify risk areas

    • Combine execution counts with complexity

    • Understand complex code segments that are frequently executed

    • Understand criticality

  • Assist in creating new test cases

  • Assist in manual detection of faults

  • Prioritize test cases for regression tests

SW Eng Standalone Progs, Univ of Colorado Boulder


Some more test coverage terms l.jpg

Some More Test Coverage terms

SW Eng Standalone Progs, Univ of Colorado Boulder


Test coverage measures completeness of test suite l.jpg

Test Coverage MeasuresCompleteness of Test Suite

SW Eng Standalone Progs, Univ of Colorado Boulder


Test coverage measurement minimize and select regression tests l.jpg

Test Coverage MeasurementMinimize and select regression tests

377 Total Tests

Blocks Decisions P-uses All-uses

75% 65% 38% 44%

160 Total Tests

Blocks Decisions P-uses All-uses

75% 65% 38% 44%

5% of original tests provide 85% of original coverage

18 Total Tests

Blocks Decisions P-uses All-uses

62% 52% 30% 37%

42% of the original tests provide identical coverage

SW Eng Standalone Progs, Univ of Colorado Boulder


Unit test coverage vs system test errors l.jpg

Unit Test Coverage vsSystem Test Errors

SW Eng Standalone Progs, Univ of Colorado Boulder


System test observed expected failures l.jpg

System Test Observed & Expected Failures

SW Eng Standalone Progs, Univ of Colorado Boulder


System test failure rate over active hrs l.jpg

System Test Failure Rate over Active Hrs

SW Eng Standalone Progs, Univ of Colorado Boulder


System test case completion graph l.jpg

System Test Case Completion Graph

SW Eng Standalone Progs, Univ of Colorado Boulder


Hw 7 start of code l.jpg

HW 7 start of code

getop(s, lim) /*get next operator or operand */

char all;

int lim;

{

int i, c;

while ((c = getch ( ) ) == ‘ ‘|| c == ‘\t’ || c == ‘\n’)

;

if (c ! = ‘.’ && (c<‘0’ || c>’9’))

return (c);

s[0] = c;

for (i=1; (c=getchar()) >= ‘0’ && c <=‘9’; i++)

if (i < lim)

s[i] = c;

if ...

SW Eng Standalone Progs, Univ of Colorado Boulder


Inspections l.jpg

Inspections

SW Eng Standalone Progs, Univ of Colorado Boulder


What are inspections l.jpg

What are inspections?

  • Means of verifying work products

  • Manual examination technique

  • One piece at a time

  • Small group of peers – at least 4

SW Eng Standalone Progs, Univ of Colorado Boulder


Purpose l.jpg

Purpose

  • Verification of a work product against

    • established criteria

    • product specifications

SW Eng Standalone Progs, Univ of Colorado Boulder


How performed l.jpg

How performed?

  • Planning

  • Overview

  • Preparation

  • Meeting

  • Re-work

  • Follow up

SW Eng Standalone Progs, Univ of Colorado Boulder


Roles of participants l.jpg

Roles of participants

  • Author

  • Moderator

  • Reader

  • Recorder

  • Inspector

SW Eng Standalone Progs, Univ of Colorado Boulder


The meeting l.jpg

The meeting

  • Each participant reports preparation time

  • Reader paraphrases

    • Pace should be effective

    • Not too slow, not too fast

  • Inspectors look, listen, and think simultaneously

  • Author and inspectors speak up if they disagree with reader’s paraphrase – need to decide which is correct. If Reader, Recorder notes location & brief description of issue

  • Moderator can adjust pace and “atmosphere”

SW Eng Standalone Progs, Univ of Colorado Boulder


End of meeting l.jpg

End of meeting

  • Recorder’s list goes to author

  • After rework, at a minimum, author reviews changes with one inspector.

  • Better – inspect the changed item

SW Eng Standalone Progs, Univ of Colorado Boulder


Benefits l.jpg

Benefits

  • Errors found at faster rate

  • Errors found early are cheaper to fix

  • Cross-training

  • Learn good and bad techniques by seeing them, e.g. coding techniques

SW Eng Standalone Progs, Univ of Colorado Boulder


A word about extreme programming l.jpg

A Word about Extreme Programming

  • My personal view of extreme programming is that Beck & Cunningham managed to incorporate many effective software engineering tasks into short iterations with high feedback.

  • One example: pair programming is ...

SW Eng Standalone Progs, Univ of Colorado Boulder


  • Login