Liberty University

advertisement
Liberty University
IT Development and Engineering
Test Plan
* Revision 1.2 – 09/06/2005 – This Template is a generic template that can be used for any development at
IT Development & Engineering. The goal of this template is to collect as much relevant information as
possible so the Verification and Testing Unit, can conduct tests on the system being deployed.
The template is flexible in nature, if you need to need any information to this document that you think there
is not an appropriate location to do so, just create the space for it and add your notes.*
Project Name: * Name of Project – including any sub-projects it may have or the name of the parent
project *
Team Members: * Everyone included on the project. Project Manager, Developers, System Developers,
User Education, Customers, Product Owner, Testers, External Vendor, etc…*
Overview:
Name of Product: * If already described under project name, not necessary *
Background: * What’s this system all about? What’s its history? What are we trying to solve? Is it
a new implementation? An upgrade to a new version? What’s it suppose to solve? Etc… *
Feature List: * What are the features, components, technologies that this project has? What does
each one of them do? *
Technical Specifications: * Depending on your project not all of the options below are required. If you
need to describe other technical specs that are not listed, just add them to the list. *
Files Added/Deleted/Modified for release: * List of all files that have been created, removed, or
modified because of this project. Add file system patch (if applicable). If files can be grouped together
under different features (described above), please do so. *
Databases: * What are the tables, and database that this project uses? Did you have to modify
data, structure? If yes, which ones? *
Datasources: * List of Datasources used for this system (if applicable). Did it already exist? Did
you have to modify permissions on the DB for this particular datasource? *
Apache/IIS Modifications: * Were virtual directories have to be created? Modified? *
Server Side Language Modifications: * Any specific settings for the server side language had to be
modified? If yes, which ones? (i.e. coldfusion sandbox) *
Server Settings: * Any operating system level configuration needed to be added/modified? (i.e.
System or Share permissions?) If yes, which ones? *
External Application Modifications: * Any modification to external applications? (i.e. Web
Administrator? Web Manager?) If yes, which ones? *
Network Settings: * Any modification done to the network? (i.e. Firewalls, DNSs, IP settings, etc)
*
Security Settings: * File level, user level permissions, anything else that has to do with handling
data transfer, user authentication and validation, etc. *
Expected Results (per component): * A component could be any ‘system unit’ being produced or
configured in the system. It could be a module from Coldfusion, a Linux daemon like Apache or even a
piece of hardware like the SAN.
For every functionality/module/screen on your product there should be a predetermined expected result. If
an action happens, what is the result expected? What changes on the database? On layout? Or
configuration files? Or permissions? Include the expected results of all exceptions for each module.
Be aware that this section of the document will most likely be the longest and most cumbersome to write.
Feel free to use the help of the Verification and Testing Unit to help you find scenarios for the Expected
Results.
A good “Expected Result” description should always list the Input Values, Conditions in which those
values are going to be executed under, and the expected Output Values. Even for servers or images, the
developer must be aware of what types of request the server will be getting and what type of responses it
will be giving. Depending on the type of system load testing, security testing must be described in the
environments below.
If test team discovers anything that is not “expected” it will be considered a defect. *
Development Environment: * Describe the behavior, input/output, technical aspects of the
development version of your system. *
Test Environment: * Describe the behavior, input/output, technical aspects of the test version of
your system. This should be as close as possible to the results on Production.*
Production Environment: * Describe the behavior, input/output, technical aspects of the final
production version of your system. *
* Sometimes an application/image/server setting needs to be tweaked from development -> test ->
production, make sure to document them in the space above as well. *
Role Infrastructure: * What types of user permissions does this system have? What are the expected
results for each permission level? Any other type of permissions that describe the role of the users on this
system? If yes, explain the expected results, how to manage them, etc… *
List of roles and description of each
Scheduling: * What’s the estimated timetable for Testing/Deployment to happen? It is good practice to
have testing done once the application has been deployed to production. Make sure to allocate time for that
as well. This time table should be given by the Project manager. *
Date for testing to be completed:
Date for testing on deployment to be completed:
Date for deployment to be completed:
Date for testing on production to be completed:
Checklist: * After creating this document, can you answer all of these questions with a positive answer? *
Can a person not related to this project, read this document and have an overview of what you are
trying to accomplish?
Will a person know what the time frames for Testing, Deployment and Go Live Date are?
Are all the files/configurations/permissions necessary for a successful deployment listed on this
document?
Will a person be able to understand the expected results of each component of this project?
Have you listed expected results for invalid inputs? Or abnormal conditions?
Download