Agile Testing Methods
Essay Preview: Agile Testing Methods
Report this essay
If you are using an agile methodology to develop and test your application, you typically create user stories and use sprints and iterations to track the progress of your development and testing tasks. You can use test plans to correlate with each sprint. For example, you might have the following user stories for your Web application:
A user wants to select multiple products from the website and add them to their shopping cart. (Sprint 1)
A user wants to purchase the items in their shopping cart using a credit card. (Sprint 1)
A user wants to save their information when purchasing items to make it quicker to purchase next time. (Sprint 2)
A user wants to sign into their account when purchasing items to retrieve their personal information instead of entering it again. (Sprint 2)
The following steps assume that these are the user stories for the project. You will want to create test cases for these user stories. You might also want test cases that test end-to-end functionality for multiple user stories that can be joined together. For example, you might want to test that a user can select items, add them to their shopping cart, sign in and purchase the items. By following these steps, you will have a set of test plans, as shown in the following illustration:
Project Set Up
At the start of your project, create the following test plans. (This is based on the number of sprints that you plan to have.)
Sprint 1 Test Plan
This will be used for testing Sprint 1 user stories.
Sprint 2 Test Plan
This will be used for testing Sprint 2 user stories and any necessary regression testing from Sprint 1.
Master Test Plan
This will be used for end-to-end tests that span more than one sprint. It can also be used for performance tests for service level agreements. This test plan does not have to be associated with a specific iteration, because it spans multiple iterations and can only be complete when all milestones are completed.
Determine the test configurations that you need to use to test your user stories. For example, you might want to test that your user stories for your application run on Internet Explorer 8 for configuration 1 and Firefox 3.5 for configuration 2. Then create these test configurations using Microsoft Test Manager. For more information about how to create test configurations, see Defining Your Test Matrix Using Test Configurations.
Add the test configurations that you need for your user stories to the test plan. By default these will be used for any test suites that you create in the test plan.
Note
If you need to use different configurations for specific user stories or test cases, then you can change the test configurations for each test suite. For more information, see How to: Select Different Test Configurations For a Test Plan or a Test Suite.
Sprint 1 Testing
Add the user stories 1 and 2 for sprint 1 to the Sprint 1 Test Plan to create two requirement-based test suites. For more information about how to create test suites from user stories, see How to: Add Requirements or User Stories to Your Test Plan
Check the test configurations that you need for the test suites for the user stories are correct. By default, each test suite is set up to use the test configurations for the test plan.
Add the acceptance test cases to these test suites for user stories 1 and 2. For example, you might add the following test cases to the appropriate test suite:
User Story 1: Add one item to the shopping cart
User Story 1: Remove an item from the shopping cart
User Story 2: Purchase a single item from the shopping cart
These test cases are automatically associated with the user story if they are added to the test suite created from that user story. For more information about how to add test cases to a test suite, see How to: Add a Test Case to a Test Suite.
Note
You can add the test steps when you create the test cases, or another tester can add the test steps when it becomes clear what the steps will be.
If you create any automated tests, you can add these to the test suites. For example, if you have any unit tests or coded UI tests, you can associate these with test cases and add these to the test suites. For more information, see How to: Associate an Automated Test with a Test Case or Create Test Cases from an Assembly of Automated Tests. You can add these tests whenever they are ready during the sprint.
Add any end-to-end test cases that you know you will want to test as the user stories are completed to the end-to end test suite in the master test plan.
When a user story is ready for testing during the sprint, set the test suite status