Home > Ask the Software Quality Experts > Software Testing and Quality Assurance Questions & Answers > How to design test cases from use cases
Ask The Software Quality Expert: Questions & Answers
EMAIL THIS

How to design test cases from use cases

Mike Kelly EXPERT RESPONSE FROM: Mike Kelly

Pose a Question
Other Software Quality Categories
Meet all Software Quality Experts
Become an Expert for this site


Software quality news and advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


>
QUESTION POSED ON: 26 September 2007
Please explain how to design test cases from use cases?


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


RELATED CONTENT
Software Testing and Quality Assurance
What are the top free and not-free automated test tools?
Test case preparation for a Web-based application
The difference between functional testing and regression testing
Free load/performance testing tools for Java-based Web applications
Mapping results in test environment to production environment
What are some debugging shortcuts to reduce frequent debugging?
How to get a software testing job in a recession
How to write a test strategy document
What are the risks in using open source test automation tools?
What is system integration testing?

Software test design
How test managers can shine in agile development: Tutorial, part two
Testing mobile Web applications for usability and context
Test case preparation for a Web-based application
Agile software development tutorial: Agile testing
Six software test planning tips for better QA testing ROI
Software testing deliverables: Developing a software testing strategy
How to write a test strategy document
Perfect Software, Ch. 8: What Makes a Good Test
Pros and cons of requirements-based software testing
Using proactive test design methods to catch requirements issues early

Use cases and misuse cases
Requirements use cases tutorial: Advanced formats, test case comparisons
Use cases for software requirements tutorial: Strengths, flaws, formats
Writing a software requirements specification (SRS) for a portal app
Agile software development tutorial: Agile requirements gathering
Pros and cons of requirements-based software testing
How to avoid requirements creep
Template for requirements use cases
Top 10 software requirements tips
Use cases and SRS for requirements gathering
Use cases: Who writes them, what data do you include?

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
gray box  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary


Before you can design the tests, you'll need to know what the use case is telling you. A good place to start for this question is the course on specification-based testing on TestingEducation.org. The course covers techniques that can be useful in reviewing use cases (active reading, context-free questions, etc…) and it covers the basics of traceability if the topic is new to you.

Assuming you've picked apart the use case in intricate detail, next you might want to look at some different test techniques. For this part we'll steal from the Satisfice Heuristic Test Strategy Model (PDF), which lists nine general test techniques. Use cases make claims about the application (or system) and quite often they point out the major functions of the application. The actors identified are often users (or other systems, which are also users). As you look at the primary and alternative flows, think about the scenarios created.

Of the nine general test techniques listed, the following are the four that I think are most commonly associated with testing use case flows and requirements:

  • Claims Testing
    Verify every claim
    1. Identify reference materials that include claims about the product (implicit or explicit).
    2. Analyze individual claims, and clarify vague claims.
    3. Verify that each claim about the product is true.
    4. If you're testing from an explicit specification, expect it and the product to be brought into alignment.
  • Function Testing
    Test what it can do
    1. Identify things that the product can do (functions and subfunctions).
    2. Determine how you'd know if a function was capable of working.
    3. Test each function, one at a time.
    4. See that each function does what it's supposed to do and not what it isn't supposed to do.
  • User Testing
    Involve the users
    1. Identify categories and roles of users.
    2. Determine what each category of user will do (use cases), how they will do it, and what they value.
    3. Get real user data, or bring real users in to test.
    4. Otherwise, systematically simulate a user (be careful -- it's easy to think you're like a user even when you're not).
    5. Powerful user testing is that which involves a variety of users and user roles, not just one.
  • Scenario Testing
    Test to a compelling story
    1. Begin by thinking about everything going on around the product.
    2. Design tests that involve meaningful and complex interactions with the product.
    3. A good scenario test is a compelling story of how someone who matters might do something that matters with the product.
Software testing resources:
How to design test cases

User acceptance testing that satisfies users and requirements

Reduce software defects with requirements-based function testing
If you're using all four of these techniques, you're going to generate a lot of test ideas and test cases. That's great. The next problem you'll have is to prioritize them. Most likely you'll know what test cases are most appropriate for your context, but if you need help, review a list of your test case ideas with other team members (testers, developers, analysts, and stakeholders) to prioritize where you spend your time.




Search and Browse the Expert Answer Center
Search and browse more than 25,000 question and answer pairs from more than 250 TechTarget industry experts.
Browse our Expert Advice



Software Quality - Software Maintenance, Software Requirements, Software Standards
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts