1 / 20

Software Testing

Software Testing. Functional, MCC, Dataflow Testing, Cause-Effect Graphing. Testing from Fall 04. Test phases Unit, Integration, System, Acceptance, Regression Structural testing C0, C1, Boundary Random testing Operational profile Test plans. Functional Testing. Black Box testing

Télécharger la présentation

Software Testing

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Testing Functional, MCC, Dataflow Testing, Cause-Effect Graphing

  2. Testing from Fall 04 • Test phases • Unit, Integration, System, Acceptance, Regression • Structural testing • C0, C1, Boundary • Random testing • Operational profile • Test plans

  3. Functional Testing • Black Box testing • Deriving test cases from the requirements

  4. Example Problem - Pay Program • reads in hours and wages • hours must be > 0 and < 80 • wages must be > 0 and < 100 • time and a half is paid for hours > 40 • output messages are • "wages in error" • "hours in error" • "no error"

  5. pay example But plotting the domain is not always practical

  6. Non-graphical functional testing • Build a matrix • every row is a condition from the problem • construct all the truth-table possibilities • indicate the output for every column • every column becomes a subdomain • create a test for every column • Identify important boundaries • create 2-on, 1-off test for each important boundary

  7. Solution

  8. TTYP Task • Build a test matrix for the triangle problem • Given 3 inputs, interpret them as the lengths of the sides of a triangle • Output the type of triangle: • Scalene, isosceles, equilateral, not a triangle, bad inputs

  9. Multiple Condition Coverage • For each decision • test case for true and test case for false • same as C1 • For each complex (involves logical operators) decision • test case for each combination of T/F for each relational operator • A || B requires TT, TF, FT, FF • Lazy evaluation => TX, FT, FF

  10. TTYP Task – MCC • Generate the test sets to achieve multiple condition coverage for the “if a>=b+c || b>=a+c || c>=a+b” decision in the triangle problem

  11. Data flow coverage • Def x is a node where x is defined (given a value) • Use x is a node where the value of x is used in an expression or a decision • C use is in a computation • P use is in a decision (predicate) • A def-free path is a path from a definition to a use that does not include another definition of that variable.

  12. dcu - from every def to a c-use • c-use (computation) • if a variable is defined in node A and there are computational uses in node B and D, the dcu coverages requires an def-free path segment of either ABC or ACD

  13. dpu - from every def to a p-use • p-use (predicate) • if a variable is defined in node A and it is used in a decision in C, the dpu coverage requires two def-free paths, one with segment of A...CD and one with A...CE

  14. du - from every def to every use • if a variable is defined in node A and there are computational uses in node B and D, the du coverage requires a def-free path from node A to node B and a def-free path from node A to node D

  15. TTYP task • Generate test case sets for triangle problem • dpu • dcu • du

  16. Cause-Effect Graphing • Identify the basic conditions: b1, b2 (aka causes, atomic conditions) • Identify the effects as boolean expressions of the conditions • Identify combinations of the boolean expressions

  17. Classic Example - boiler • Boiler should shut down if • Water level is below 20,000 lb • Water level is above 120,000 lb • Degraded mode and steam meter fails (Degraded mode if water pump has failed or pump monitor has failed)

  18. Conditions for boiler • B1 – water below 20,000 lbs • B2 – water above 120,000 lbs • B3 – water pump has failed • B4 – pump monitor has failed • B5 – steam meter has failed • E1 – shut the boiler • E1 = (B1 or B2 or (B5 (B3 or B4))

  19. TTYP • Identify the basic conditions for the triangle problem • Identify the effects (e.g. scalene) and their boolean conditions

  20. Thursday, Apr 6 • OO testing • Pressman 372-375,410-423 • SOS ch 13 • PreLecture quiz • functional, mcc, data-flow,

More Related