140 likes | 350 Views
Criteria-Based Test Case Design. Tracy Monteith (who is here because he lost a bet with Tom). What does…. Criteria-based mean to you? Test Case design mean to you?. What I intend to speak about. Discuss Test Case organizational Techniques Discuss Test Case design approaches
E N D
Criteria-Based Test Case Design Tracy Monteith (who is here because he lost a bet with Tom)
What does… • Criteria-based mean to you? • Test Case design mean to you?
What I intend to speak about • Discuss Test Case organizational Techniques • Discuss Test Case design approaches • Discuss criteria used to determine which test case design techniques I should use. Not covered: Type of software, type of industry, criticality of software, organization maturity, timeline, company specific techniques, size of effort, manual vs. automation, capacity of test team, recent weather trends
Test Case Organization • Test Type • Quality Criteria • Work Breakdown Structure
Now that you have the right buckets… • How do you decide which type of test design techniques will serve you best? • What type of information is available to the test designer and when?
Input = Requirements • Are they explicit or implicit? • Are they enumerated and prioritized? • What is the source of the requirements? • Have the requirements been verified? • Reasonably Complete? • End-User Requirements vs. Stakeholder Requirements TC = Stepwise Requirement Hierarchy
Input = Code • Code == Spec (a developer’s dream) • What language? • What is the Quality of the Code? • Is this legacy or new code? • TC = structure testing methods combined with derived functionality test
Input = Functional Specifications • How complete? How confident? • New software or legacy extension? • Cross-referenced with other FunSpecs? • TC = Hierarchical functionality
Input = Design Specification • Do you have access at Design time? • Are designs kept reasonably current? • How much of total system has explicit design specifications? • TC = Model-based Testing
Input = User Scenarios (Use Cases) • How Complete? • Stripes of users and patterns? • Temporal constraints? • User environment information? • TC = User-based scenario e2e
My Personal Favorite • WBS x Quality Criteria x Test Type • With a judicious use of test techniques
Good Ideas • Combine techniques when multiple information avenues are available • Use Test Case templates for all test cases • Also provide the perfect “example” test case • Don’t mix purpose of Test Case • Write Test Design Specification BEFORE writing test cases • Use list on next slide to evaluate test cases
How do you recognize a good test case? • A test case must be: • Clear of purpose • Well organized • Reviewable • Maintainable • Complete • Re-usable • Useful to other testers • Easily Scheduled • Efficient