Tuesday, March 23, 2010

Scenario Testing

Scenario Testing

Scenario testing is defined as a "set of realistic user activities that are used for evaluating the product." It is also defined as the testing involving customer scenarios.

There are two methods to evolve scenarios:

1. System scenarios
2. Use-case scenarios/role based scenarios

System scenario is a method whereby the set of activities used for scenario testing covers several components in the system. The following approaches can be used to develop system scenarios:

> Story Line
> Life Cycle/ State Transition
> Deployment/implementation stories from customer.
> Business Verticals
> Battle Ground

A use case scenario is a stepwise procedure on how a user intends to use a system, with different user roles and associated parameters. A use case scenario can include stories, pictures, and deployment details. Use cases are useful for explaining customer problems and how the software can solve those problems without any ambiguity.

[To learn more on Scenario Testing see Software Testing: Principles and Practice By Srinivasan Desikan, Gopalaswamy]


This book defines Scenario Testing as:

One effective way to test the business functionality of a business process is scenario testing. Scenario testing does not test the business logic directly; it tests the whole implemented business process model for a given set of inputs. Below figure contains a simplified business process model. A business scenario is described in Table below.

The table is a simplified view of the scenario and associated fact type logical expressions. In practice, the scenario would include a selection of inputs, which in this case means policies that exercise the range of relevant values for all fact types across the business process. These scenarios exercise the system as a complete business process model. The advantage of this approach, which is based on the information


contained in the business model, is that

1) we can develop the scenarios early in the development process (no later than logical design); giving the test team valuable input on the number and complexity of tests they will be required to perform.

2) The second advantage is that the scenarios and subsequent test scripts based on the content of the business model are readily understood by the business users, which has the benefit of removing ambiguity from the testing and acceptance process.


ScenarioFact Types Evaluated
A Policy is submitted for renewal and is evaluated to determine whether the policy will be routed to the manual or automotive renewal method.
The Policy Tier is Within Bounds.
The conditions meet the requirements for automatic renewal, consequently the policy should be submitted for automatic renewal
Fact types evaluated are: Policy Tier > 2.6
Policy Discount = 0%
Policy Manual Override=No

Most Useful Scenario Testing Resources:

1. Scenario Testing Approach for Trading Systems
applabs

2. Cem Kaner on Scenario Testing
ScenarioSTQE

3. Scenario testing, Why use scenario tests?, Sixteen ways to create good scenarios, Risks of scenario testing
Testingeducation

4. What is scenario testing?, Why use scenario tests?, Methods of scenario tests etc
Scenario Testing