Test Management .
Test Management .
Test
Management
Mr. Osmani F W
Test Plan:
• A document describing the scope, approach,
resources and schedule of intended test activities.
It identifies amongst others test items, the features
to be tested, the testing tasks, who will do each
task, degree of tester independence, the test
environment, the test design techniques and entry
and exit criteria to be used, and the rationale for
their choice, and any risks requiring contingency
planning. It is a record of the test planning
process.
Mr. Osmani F W
Steps for preparing a test plan
• Analyze the product (learn product thoroughly)
• Develop test strategy -define scope of testing ,risk
and issues
• Define objective of test
• Define test criteria
• Planning the resources
• Plan test environment
• Schedule and cost
• Test deliverables
Mr. Osmani F W
• Test deliverables includes
Scope
Methodology
Requirements
Criteria for pass-fail
schedule
Mr. Osmani F W
TEST PLAN TYPES
• Master Test Plan: A single high-level test plan for a
project/product that unifies all other test plans.
• Testing Level Specific Test Plans :Plans for each level
of testing.
– Unit Test Plan
– Integration Test Plan
– System Test Plan
– Acceptance Test Plan
• Testing Type Specific Test Plans: Plans for major
types of testing like Performance Test Plan and
Security Test Plan.
Mr. Osmani F W
TEST PLAN GUIDELINES
• Make the plan concise. Avoid redundancy and superfluousness. If
you think you do not need a section that has been mentioned in the
template above, go ahead and delete that section in your test plan.
• Be specific. For example, when you specify an operating system as
a property of a test environment, mention the OS Edition/Version as
well, not just the OS Name.
• Make use of lists and tables wherever possible. Avoid lengthy
paragraphs.
• Have the test plan reviewed a number of times prior to base
lining it or sending it for approval. The quality of your test plan
speaks volumes about the quality of the testing you or your team is
going to perform.
• Update the plan as and when necessary. An out-dated and unused
document stinks and is worse than not having the document in the
first place.
Mr. Osmani F W
TEST PLAN TEMPLATE
• The format and content of a software test plan vary depending on the
processes, standards, and test management tools being implemented.
Nevertheless, the following format, which is based on IEEE standard for
software test documentation, provides a summary of what a test plan
can/should contain.
• Test Plan Identifier:
• Provide a unique identifier for the document. (Adhere to the
Configuration Management System if you have one.)
• Introduction:
Provide an overview of the test plan.
Specify the goals/objectives.
Specify any constraints.
• References:
List the related documents, with links to them if available, including the
following:
1. Project Plan
2. Configuration Management Plan
Mr. Osmani F W
• Test Items:
List the test items (software/products) and their versions.
• Features to be Tested:
1. List the features of the software/product to be tested.
2. Provide references to the Requirements and/or Design
specifications of the features to be tested
• Features Not to Be Tested:
1. List the features of the software/product which will not be
tested.
2. Specify the reasons these features won’t be tested.
• Approach:
1. Mention the overall approach to testing.
2. Specify the testing levels [if it’s a Master Test Plan], the
testing types, and the testing methods
[Manual/Automated; White Box/Black Box/Gray Box]
Mr. Osmani F W
• Item Pass/Fail Criteria:
1. Specify the criteria that will be used to determine whether
each test item (software/product) has passed or failed
testing.
• Suspension Criteria and Resumption Requirements:
1. Specify criteria to be used to suspend the testing activity.
2. Specify testing activities which must be redone when
testing is resumed.
• Test Deliverables:
List test deliverables, and links to them if available,
including the following:
– Test Plan (this document itself)
– Test Cases
– Test Scripts
– Defect/Enhancement Logs
– Test Reports Mr. Osmani F W
• Test Environment:
1. Specify the properties of test environment: hardware,
software, network etc.
2. List any testing or related tools.
• Estimate:
Provide a summary of test estimates (cost or effort) and/or
provide a link to the detailed estimation.
• Schedule:
Provide a summary of the schedule, specifying key test
milestones, and/or provide a link to the detailed schedule.
• Staffing and Training Needs:
1. Specify staffing needs by role and required skills.
2. Identify training that is necessary to provide those skills, if
not already acquired.
Mr. Osmani F W
• Responsibilities:
List the responsibilities of each team/role/individual.
• Risks:
1. List the risks that have been identified.
2. Specify the mitigation plan and the contingency plan for
each risk.
• Assumptions and Dependencies:
1. List the assumptions that have been made during the
preparation of this plan.
2. List the dependencies.
• Approvals:
1. Specify the names and roles of all persons who must
approve the plan.
2. Provide space for signatures and dates. (If the document is
to be printed.) Mr. Osmani F W
Risk Management During Test Planning
The risk management process occurs twice, during:
• Test planning
• Test case design(end) or sometimes in the test execution phase
Mr. Osmani F W
• Risk identification
As it is said, the first step to solving a problem is
identifying it. This stage involves making a list of
everything that might potentially come up and disrupt the
normal flow of events.
• Risk Analysis in software testing: All the risks are
quantified and prioritized in this step. Every risk’s
probability (the chance of occurrence) and impact
(amount of loss that it would cause when this risk
materializes) are determined systematically.
High – medium – low, values are assigned to both the
probability and impact of each risk. The risks with “high”
probability and “High” impact are taken care of first and
then the order follows.
Mr. Osmani F W
• Risk Mitigation
The final step in this Risk Based Testing
(RBT) process is to find solutions to plan how
to handle each one of these situations. These
plans can differ from company to company,
project to project and even person to person.
Mr. Osmani F W
Deciding test approach
• Like any project, the testing also should be driven by a plan. The test
plan acts as the anchor
• for the execution, tracking and reporting of the entire testing project.
Activities of test plan:
1. Scope Management: Deciding what features to be tested and not to be
tested.
2. Deciding Test approach /strategy: Which type of testing shall be done
like configuration, integration, localization etc.
3. Setting up criteria for testing: There must be clear entry and exit
criteria for different phases of testing. The test strategies for the
various features and combinations determined how these features and
combinations would be tested.
4. Identifying responsibilities, staffing and training needs
5. Identifying resource requirements
6. Identifying test deliverables Mr. Osmani F W
Setting up criteria for testing
• There must be clear entry and exit criteria, pass or fail
criteria , suspend criteria, Resume criteria for different
phases of testing. The test strategies for the various features
and combinations determined how these features and
combinations would be tested.
Pass or fail :- Specify the criteria that will be used to
determine whether each test item has passed or failed
testing.
Suspend Criteria :- Specify the criteria to be used to suspend
test activity.
Resume Criteria :- Specify the criteria which must be
redone when testing is resumed.
Mr. Osmani F W
Identifying Responsibilities
• A testing project requires different people to play different roles. There
are roles of test engineers, test leads and test managers. There is also
role definition on the dimensions of the modules being tested or the
type of testing. These different roles should complement each other.
• The different role definition should -
Ensure there is clear accountability for a given task, so that each
person knows what he or she has to do,
Clearly list the responsibilities for various functions to various people,
so that everyone knows how his or her work fits into the entire project.
Complement each other, ensuring no one steps on an others‟ toes
Supplement each other, so that no task is left unassigned. Role
definition should not only address technical roles, but also list the
management and reporting responsibilities. This includes frequency,
format and recipients of status reports and other project-tracking
mechanism.
Mr. Osmani F W
Various hardware and software required /
recommended by project manager
1. At the most basic level, project management products will help your
organization to manage projects from start to finish, and allow
employees at different levels to have an input into the process.
3. Project applications can also carry out scheduling, cost control and
budget management, resource allocation, collaboration, communication,
quality management and documentation or administration.
4. The aim with these is to handle all aspects and complexities of larger
projects and help keep costs down.
Mr. Osmani F W
Test Deliverables and Milestones
• Test Deliverables are the artifacts which are given to the stakeholders of
software project during the software development lifecycle. There are
different test deliverables at every phase of the software development
lifecycle. Some test deliverables are provided before testing phase, some are
provided during the testing phase and some after the testing cycles is over.
• The different types of Test deliverables are:
Test cases Documents
Test Plan
Testing Strategy
Test Scripts
Test Data
Test Traceability Matrix
Test Results/reports
Test summary report
Install/config guides
Defect Reports
Release notes Mr. Osmani F W
1. The test plan describes the overall method to be used to verify that the
software meets the product specification and the customer's needs. It
includes the quality objectives, resource needs, schedules,
assignments, methods, and so forth.
2. Test cases list the specific items that will be tested and describe the
detailed steps that will be followed to verify the software.
3. Bug reports describe the problems found as the test cases are
followed. These could be done on paper but are often tracked in a
database.
4. Test tools and automation are listed and described which are used to
test the software. If the team is using automated methods to test
software, the tools used, either purchased or written in-house, must be
documented.
5. Metrics, statistics, and summaries convey the progress being made as
the test work progresses. They take the form of graphs, charts, and
written reports.
• Milestones: milestones are the dates of completion given for various
tasks to be performed in testing. These are thoroughly tracked by the
test manager and are kept in the Mr.documents
Osmani F W such as Gantt charts, etc.
Test Management
• It concerned with both test resource and test
environment management. It is the role of test
management to ensure that new or modified
service products meet business requirements
for which they have been developed or
enhanced.
Mr. Osmani F W
Test Infrastructure
The top, or project level, test plan, the process of creating it is more important
than the resulting document. The next three levels, the test design
specification, the test case specification, and the test procedure specification
are described in detail in the following sections.
As you can see in Figure, moving further away from the top-level test plan
puts less emphasis on the process of creation and more on the resulting written
document. The reason is that these plans become useful on a daily, sometimes
hourly, basis by the testers performing the testing. At the lowest level they
become step-by-step instructions for executing a test, making it key that
they‘re clear, concise, and organized how they got that way isn‘t nearly as
important.
This standard is what many testing teams have adopted as their test planning
documentation intentional or not—because it represents a logical and
common-sense method for test planning.
The important thing to realize about this standard is that unless tester is bound
to follow it to the letter because of the type of software he is testing or by your
corporate or industry policy, tester should use it as a guideline and not a
standard. Mr. Osmani F W
Test Design
The overall project test plan is written at a very
high level. It breaks out the software into
specific features and testable items and assigns
them to individual testers, but it doesn‘t specify
exactly how those features will be tested. There
may be a general mention of using automation or
black- box or white-box testing, but the test plan
doesn‘t get into the details of exactly where and
how they will be used. This next level of detail
that defines the testing approach for individual
software features is the test design specification.
Mr. Osmani F W
Test Cases
Dissecting a specification, code, and software to derive the minimal amount
of test cases that would effectively test the software. The test case
specification ―documents the actual values used for input along with the
anticipated outputs. A test case also identifies any constraints on the test
procedure resulting from use of that specific test case.‖ Essentially, the
details of a test case should explain exactly what values or conditions will
be sent to the software and what result is expected.
It can be referenced by one or more test design specs and may reference
more than one test procedure. The ANSI/IEEE 829 standard also lists some
other important information that should be included:
• Identifiers.
• Test item.
• Input specification.
• Output specification.
• Environmental needs.
• Special procedural requirements.
• Intercase dependencies.
Mr. Osmani F W
Test Procedures
After tester documents the test designs and test
cases, what remains are the procedures that
need to be followed to execute the test cases.
The test procedure specification ―identifies all
the steps required to operate the system and
exercise the specified test cases in order to
implement the associated test design. The test
procedure or test script spec defines the step-
by-step details of exactly how to perform the
test cases. Here‘s the information that needs to
be defined:
Mr. Osmani F W
• Identifier. A unique identifier that ties the test procedure to the associated test
cases and test design.
• Purpose. The purpose of the procedure and reference to the test cases that it will
exe-cute.
• Special requirements. Other procedures, special testing skills, or special
equipment needed to run the procedure.
• Procedure steps. Detailed description of how the tests are to be run:
• Log. Tells how and by what method the results and observations will be
recorded.
• Setup. Explains how to prepare for the test.
• Start. Explains the steps used to start the test.
• Procedure. Describes the steps used to run the tests.
• Measure. Describes how the results are to be determined for example, with a
stopwatch or visual determination.
• Shut down. Explains the steps for suspending the test for unexpected reasons.
• Restart. Tells the tester how to pick up the test at a certain point if there‘s a
failure or after shutting down.
• Stop. Describes the steps for an orderly halt to the test.
• Wrap up. Explains how to restore the environment to its pre-test condition.
Mr. Osmani F W
• Contingencies. Explains what to do if things don‘t go as planned.
Test Process in Software Testing
Mr. Osmani F W
2) Analysis and Design
Test analysis and Test Design has the following major tasks:
• To review the test basis. The test basis is the information on which test cases are based,
such as requirements, design specifications, product risk analysis, architecture and
interfaces
• To identify test conditions
• To design the tests
• To design the test environment set-up and identify the required infrastructure and tools
Mr. Osmani F W
4) Evaluating Exit criteria and Reporting
Evaluating exit criteria is a process defining when to stop testing. It depends on coverage of code,
functionality or risk. Basically it also depends on business risk, cost and time and vary from
project to project. Exit criteria come into picture, when:
• Maximum test cases are executed with certain pass percentage
• Bug rate falls below certain level
• When we achieve the deadlines
Evaluating exit criteria has the following major tasks:
• To assess if more test are needed or if the exit criteria specified should be changed
• To write a test summary report for stakeholders
1.Case No.: The test case number should be a three digit identifier of the following form:c.s.t, where:
c- is the chapter number, s- is the section number, and t- is the test case number.
2. Title: is the title of the test.
3. Programme: is the program name containing the test.
4. Author: is the person who wrote the test specification.
5. Date: is the date of the last revision to the test case.
6. Background: (Objectives, Assumptions, References, Success Criteria): Describes in
words how to conduct the test.
7. Expected Error(s): Describes any errors expected
8. Reference(s): Lists reference documentation used to design the specification.
9. Data: (Tx Data, Predicted Rx Data): Describes the data flows between the Implementation
under Test (IUT) and the test engine.
10. Script: (Pseudo Code for Coding Tests): Pseudo code (or real code) used to conduct the
test. Mr. Osmani F W
Test Summary Report
Test reporting is a means of achieving communication through the testing cycle. There
are 3 types of test reporting.
1. Test incident report:
A test incident report is communication that happens through the testing cycle as and
when defects are encountered .A test incident report is an entry made in the defect
repository each defect has a unique id to identify incident .The high impact test incident
are highlighted in the test summary report.
2. Test cycle report:
A test cycle entails planning and running certain test in cycle, each cycle using a
different build of the product .As the product progresses through the various cycles it is
expected to stabilize.
Test cycle report gives
• A summary of the activities carried out during that cycle.
• Defects that are uncovered during that cycle based on severity and impact
• Progress from the previous cycle to the current cycle in terms of defect fixed
• Outstanding defects that not yet to be fixed in cycle
• Any variation observed in effort or schedule
Mr. Osmani F W
3. Test summary report:
The final step in a test cycle is to recommend the suitability of
a product for release. A report that summarizes the result of a
test cycle is the test summary report.
There are two types of test summary report:
Phase wise test summary, which is produced at the end of
every phase Final test summary report. A Summary report
should present Test Summary report Identifier Description
Identify the test items being reported in this report with test id
1). Variances: Mention any deviation from test plans, test
procedures, if any.
2). Summary of results: All the results are mentioned here with
the resolved incidents and their solutions.
3). Comprehensive assessment and recommendation for release
should include Fit for release assessment and recommendation
of release Mr. Osmani F W
Test Reporting
Test reporting is a means of achieving communication
through the testing cycle. There are 3 types of test
reporting.
1. Test incident report:
A test incident report is communication that
happens through the testing cycle as and when
defects are encountered .A test incident report is an
entry made in the defect repository each defect has a
unique id to identify incident .The high impact test
incident are highlighted in the test summary report.
Mr. Osmani F W
2. Test cycle report:
A test cycle entails planning and running certain test in
cycle , each cycle using a different build of the product
.As the product progresses through the various cycles
it is expected to stabilize.
Test cycle report gives
1. A summary of the activities carried out during that
cycle.
2. Defects that are uncovered during that cycle based on
severity and impact
3. Progress from the previous cycle to the current cycle in
terms of defect fixed
4. Outstanding defects that not yet to be fixed in cycle
5. Any variation observed Mr.inOsmani
effort
FW
or schedule
3 Test summary report:
The final step in a test cycle is to recommend the suitability of a product
for release. A report that summarizes the result of a test cycle is the test
summary report.
There are two types of test summary report:
1.Phase wise test summary ,which is produced at the end of every phase
2. Final test summary report .
Mr. Osmani F W