Page 289 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 289
Unit 14: Flow Based Testing Process
14.2 Test Plan Notes
Test plan is probably one of the most significant documents for software testing projects. Test
plan may hold information associated to scope, environment, schedule, risk, resources, execution,
reporting, automation, completion criteria etc.
Test plan is usually created by Test manager, Test lead or senior testers in the team. Before start
preparing Test plan, information should be captured from various stakeholders of the project.
Information captured from stakeholder is usually reflected in the Test plan.
Typically, every Test plan contains information about following activities. Information about
these activities can be gathered from various stakeholders by asking questions that are required
for your Test plan.
14.2.1 Definition of a Test Plan
A test plan can be defined as a document describing the scope, approach, resources, and schedule
of planned testing activities. It identifies test items, the features to be tested, the testing tasks,
who will do every task, and any risks requiring contingency planning.
In software testing, a test plan gives detailed testing information regarding an upcoming testing
effort, including:
Scope Management: Before starting Test Planning activity, scope of the test activities should
be known. You should have information on what features will be tested and what will not
be tested. You should also have information on what areas your team owns? Are you taking
care of all the types of testing that is required for the product including Performance, Security,
globalization etc.? Defining scope for your testing project is very important for the management
as well. If scope is properly defined, everyone will have clear understanding about what is
tested and what is not.
Reference: You should clearly define documents you are referring to prepare test plan. Any
changes in the documents you are referring should be reflected in your plan.
Risk Management: Test strategy is derived from the risk analysis. Risk will be different from
one project to another and so your Test strategy. Risk associated with desktop tax calculation
software will be different from payment gateway or life support system. In your testing strategy,
you need to make sure that all the potential risks are captured and managed by your testing
activities. You should, along with the other stake holders define what are the potential risk in the
project? What will be the impact if these risks are materialized? What is the mitigation plan for
these risks and how your testing activities are making sure that these risks are managed properly?
Test Environment: You should have information on what will be the environment for the testing.
This information is captured from stake holders by asking them, what type of environment
will be supported by product? What is the priority for these environments? For example, if
product is supported on the entire platform and data for user distribution says that 80% are on
Windows, 15 percent are on Linux and 5% are on Mac. From this data you can make out which
platform will be tested more. Information captured here will be useful for planning hardware
and software requirement for your Test Lab.
Criteria Definition: Criteria for Entry and Exit should be clearly defined for every activity of
your testing project. You should have well defined entry/exit criteria for starting, stopping,
suspending and resuming test activities. You should also have criteria defined for specifying
when testing is complete.
Estimation, Scheduling and Resource Management: Mostly, testing project follows development
activities. So for estimation and scheduling you should have information on the development
plan and milestone. Once you have information on the development plan, you can schedule
your testing activities accordingly. Resources in testing projects include hardware, software
and people management.
LOVELY PROFESSIONAL UNIVERSITY 283