Project Name

advertisement
Project Name
Document Version 1.0
Prepared by Jane Doe, ITS
Last Edited March 12, 2016
PLAN
REQUIREMENTS
SOLUTION
ANALYSIS
DESIGN
BUILD
TEST
TRAIN/DEPLOY MAINTENANCE
TO THE DOCUMENT OWNER: This template is provided as a guideline and resource. The structure and instructions
give detail about what might go into a completed document. Only you and your team, however, know what will
best fit the needs of your specific effort, and you are encouraged to adapt the template as appropriate to meet
those needs.
Non-Functional Test Plan
The Non-Functional Test plan describes the tests, both manual and automated, that will be performed to
confirm that all non-functional requirements for the system have been met and all pertinent policies are
observed; this includes Performance Testing, Load and Stress Testing, Security Testing, and User
Acceptance Testing. The Non-Functional Test Plan documents the targets and other criteria which will be
used to define the specific test cases for each of the types of non-functional testing which were listed in
the Comprehensive Test Plan. This plan is the reference document for test case / test script creation.
The audiences for the Non-Functional Test Plan include:
•
The project team -- Reviews for technical accuracy, completeness, and feasibility
•
Other groups which will be involved in testing -- Review for technical accuracy and agree to
details
•
Customer steering committee -- Provides sign-off on high-level plan
Executive Summary
Summarize the approach, process, and assumptions, dependencies and risks.
The goal of the non-functional testing is to confirm that the <Project> system is robust, secure, scalable,
and usable. The Non-Functional Test Plan includes the tests, both automated and manual, to be
conducted by the project team to confirm that all non-functional requirements have been met and all
pertinent university policies are observed.
Test Approach
Different projects will require different types of non-functional testing. Describe the appropriate types for
your project, as selected in the Comprehensive Test Plan, and describe the test scenarios, scripts, or use
cases for each type of test, as well as the expected outcome for each type of testing. Include information
about which tests will be automated versus manual.
Page 1 of 6
Project Name
Document Version 1.0
Performance
It is anticipated that this section is needed to detail what was introduced in the Comprehensive Test Plan.
Performance testing is conducted to verify that the system meets expected targets under normal
conditions. Describe how testing will be performed. Define/list performance objectives and
requirements, including the following when applicable:
 Latency testing (the time difference between the data to reach from source to destinations)
 Number of clients
 Client request frequency
 Client request arrival rate
 Acceptable response time
 Acceptable throughput
 Acceptable memory utilization
 Acceptable input/output rates
 Response time versus number of concurrent users
 % of requested static pages that must meet acceptable response time
 % of requested scripts that must meet acceptable response time
 Baseline multiplier (2X, 4X,…) that system must be capable of handling
 Stubs to create
 Metrics to collect (hits per second, concurrent connections)
Load and Stress
It is anticipated that this section is needed to detail what was introduced in the Comprehensive Test Plan.
Load testing is performed to determine the application’s behavior under peak load conditions, while
stress testing involves pushing the system to failure, or to a predetermined threshold above peak load.
This type of testing is useful to identify maximum capacity as well as bottlenecks. It is useful to force
errors to expose defects related to buffer overflow, memory leaks, upper database limits. Additionally,
testing should be done to understand the application’s behavior at unusually high or peak loads.
Describe how testing will be performed. Define/list load objectives and requirements, including the
following when applicable:
 Peak ratio that system must be capable of handling
 Graceful degradation
 Load while maintaining acceptable response times
 Critical points
 Network bandwidth
 Message queue buffer size
 Interactions among components
 Interactions with databases
 Many users doing the same action
 Many users doing different actions
Non-Functional Test Plan
Page 2 of 6
Project Name
Document Version 1.0

Include longevity by putting appropriate tests in a loop, or taking database offline and then
restart it
Security
Use this section if detail in addition to the Comprehensive Test Plan is needed.
User Acceptance
It is anticipated that this section is needed to detail what was introduced in the Comprehensive Test Plan.
User Acceptance testing is to be conducted by end-users who will execute pre-defined test scripts. It is
intended to show that the needs of the business are satisfied and to instill confidence in the user set.
Users may also perform additional tests not detailed in the plan, which are also relevant and within
scope of the project. Identify participants in the activity, hardware to be used during the test, how
defects will be tracked, any user training that is necessary, and any required test data.
Other Testing
Refer to the Comprehensive Test Plan and expand this section as necessary to appropriately describe
other testing efforts. If Recovery and Error testing has not been covered in the functional testing of the
application, include that here. This could include verifying behavior in the case of a power outage.
If Usability Testing needs to be detailed, include interfaces to be considered. Much of this testing may be
included in the User Acceptance testing. If that is indeed the case, please document.
Test Process
Identify the methods and criteria used in performing test activities. Define the specific methods and
procedures for each type of test. Define the detailed criteria for evaluating test results. Also, the “order
of events” should be documented. If Regression testing is done at the end of each phase, then document
it in this paragraph. Are there any dependencies or other elements that will impact the order in which the
tests will be performed? Include skill sets required by the test team.
Test Prep
Identify the set of tasks necessary to prepare for and perform testing activities. Identify any inter-task
dependencies and any specific skills required. Include the build of test scaffolding, test data creation, and
test case automation.
Test Entry Criteria
Identify the set of tasks necessary to prepare for and perform testing activities. Identify any inter-task
dependencies and any specific skills required. An example would be that all test cases need to be written
and documented. Consider items such as staff availability and environment set-up completion. If there is
a phased approach, define the requirements for entry of each phase.
Non-Functional Test Plan
Page 3 of 6
Project Name
Document Version 1.0
Test Deliverables
Identify the deliverable documents from the test process. This includes Jira issues, test execution logs,
and test summary reports. Identify the location and availability of each of these.
Environment Requirements
Specify both the necessary and desired properties of the test environment, including the physical
characteristics, communications, mode of usage, and testing supplies. Also provide the levels of security
required to perform test activities. Identify special test tools needed and other testing needs.
Hardware and Networking
Identify the computer hardware and network requirements to complete test activities. Document any
differences between the test environment and the production environment.
Software
Identify the software requirements needed to complete test activities. This includes operating systems
and versions, browsers and versions, and applications and versions.
Test Deliverables
Identify artifacts coming out of this test, including test scripts, updated test plans, test execution results,
issued logged.
Tools
Identify any testing tools or infrastructure that may need to be developed. Identify the software tools
employed, including use of each tool. Include defect tracking tools and any required configurations.
Documentation
Identify the documents required to support testing activities.
Assumptions, Dependencies, and Risks
Assumptions
Identify the assumptions associated with this plan, such as “The above environment will be complete.”
Dependencies
Identify the dependencies, such as resource availability, hardware availability, code delivery, and
dependencies on external teams.
Risks
Identify the risks associated with this plan, specifying mitigation and/or contingency plans.
Non-Functional Test Plan
Page 4 of 6
Project Name
Document Version 1.0
Test Case Coverage Matrix
Complete the matrix to indicate how each type of testing is covered by test cases, expanding as
appropriate for your system. This matrix is to be used for planning purposes and should list the test case
name; the actual test cases will not be stored in this matrix.
A test case defines a set of conditions to be verified and has an expected and repeatable outcome.
Documentation of the test case should also include specific set-up requirements and other entry
conditions. A test script is an automated, semi-automated, or manual set of steps used to implement a
test case. These scripts are used to determine if a function meets expected behavior and delivers an
expected result. There is a 1-1 mapping of a test case to a test script. Some examples are provided
below.
Non-Functional
Area
System/Integration
Performance
Load/Stress
Test
Case
Name
Goal
Assumptions
Input
Output
SYS-25
Test interface
between A & B
A and B are
functioning
valid user id
and password
data requested is
returned and
formatted correctly
PERF-10
Simulate 50 users
logging on in a
minute
no users initially
logged in
all ids and
passwords are
valid
application
successfully
accessed
LOAD-2
Simulate 12000
users logging on at
once for 20
minutes
no users initially
logged in
all ids and
passwords are
valid
all users successfully
access or get
appropriate error
message
Security
all covered by ISO
scans
User Acceptance
User login,
complete a form
and logoff
form does not
already exist
valid user id
and password
completed, saved
form
UAT-3
fill a form
user
documentation is
complete
valid user id
and password
task completed
without issue by
user
UAT-3
Test fill a form
documentation
user
documentation is
complete
valid user id
and password
completed, saved
form
Usability
Documentation
UAT-3
Recovery and Error
Non-Functional Test Plan
not applicable
Page 5 of 6
Project Name
Document Version 1.0
Compatibility
COMP-1
Run X set of tests
on Firefox
setup critiera for X
set tests complete
all tests are
successful, all data
displayed in
acceptable manner
Revision History
Identify document changes.
Version
Date
V1
Non-Functional Test Plan
Updater Name
Description
Initial draft completed.
Page 6 of 6
Download