click to reveal definition
click to flip back
You know 0 of 22 cards in current set.
Ready to get certified?
Get CertifiedNeed this expertise applied inside your organization?
Explore Our ServicesFull Glossary
Foundations
- Use-Case-Driven Testing
- Deriving tests directly from use cases so testing verifies the required behavior stakeholders defined.
- Use Case
- A description of actor-system interactions that delivers observable value, capturing functional requirements.
- Why Test from Use Cases
- Use cases describe expected behavior clearly, making them a strong basis for test design and coverage.
- Traceability
- Linking tests to use cases so coverage is visible and change impact is clear.
Scenarios
- Scenario
- A single path through a use case — the basic flow plus chosen alternate flows — that becomes a test case.
- Basic Flow
- The main success scenario, tested to confirm the primary goal is achieved.
- Alternate Flows
- Variations and exceptions to the basic flow, each requiring its own tests.
- Scenario Enumeration
- Systematically listing the scenarios from a use case to ensure complete coverage.
Deriving Tests
- Test Case
- A specification of inputs, steps, and expected results that verifies a scenario.
- From Scenario to Test Case
- Walking a scenario and defining the data and expected outcomes to create a test case.
- Preconditions and Postconditions
- Using a use case's pre/postconditions to set up tests and verify results.
- Test Data
- Choosing inputs that exercise the scenario, including boundary and invalid values.
Coverage
- Scenario Coverage
- Ensuring every basic and significant alternate flow has corresponding tests.
- Boundary and Edge Cases
- Testing limits and unusual conditions where defects often hide.
- Negative Testing
- Verifying the system handles invalid inputs and exception flows correctly.
- Coverage Matrix
- A grid mapping use cases and scenarios to tests to reveal gaps.
Planning
- Test Planning
- Defining scope, priorities, and approach for testing based on use cases and risk.
- Risk-Based Prioritization
- Focusing testing on the highest-risk, highest-value use cases first.
- Organizing Test Suites
- Grouping tests by use case or feature for execution and maintenance.
Quality
- Testable Use Cases
- Well-written use cases with clear flows and criteria make effective test design possible.
- Acceptance Testing
- Verifying the system satisfies use-case acceptance criteria before it is accepted.
Applying It
- Automation Opportunities
- Automating repeatable use-case scenarios for regression testing and fast feedback.