RUNNING HEAD: LAB 3 – TRAIN Prototype Test Plan LAB 3- TRAIN Prototype Test Plan Green Team Tyler Swayne CS 411 W Janet Brunelle 05/1/2013 Version 2 1 LAB 3 – TRAIN Prototype Test Plan 2 Table of Contents 1 Objectives ....................................................................................................................................3 2 References .....................................................................................................................................3 3 Test Plan........................................................................................................................................3 3.1 Testing Approach ...................................................................................................................3 3.2 Identification of Tests ............................................................................................................5 3.3 Test Schedule ......................................................................................................................10 3.4 Fault Reporting and Data Recording ...................................................................................10 3.5 Resource Requirements .......................................................................................................12 3.6 Test Environment ................................................................................................................12 List of Figures Figure 1 – Prototype MFCD ...............................................................................................4 List of Tables Table 1 – Identification of Tests ..........................................................................................5 Table 2 – Test Schedule .....................................................................................................10 Table 3 – Fault Reporting and Data Recording .................................................................11 LAB 3 – TRAIN Prototype Test Plan 3 1 Objectives This document will outline and describe the testing plan and procedures of the Training Resource and Information Network (TRAIN) prototype. The test cases have been designed to thoroughly test prototype functionality. The test plan contains suitable tests that cover all of the prototype requirements. Upon successful completion of test cases, the prototype will demonstrate full implementation of all requirements 2 References Swayne, Tyler. Lab I - TRAIN Product Description. Old Dominion University CS411 Professional Workforce Development II. Norfolk, VA. 2013. Swayne, Tyler. Lab II – TRAIN Product Specification. Old Dominion University CS411 Professional Workforce Development II. Norfolk, VA. 2013. 3 Test Plan The test plan for TRAIN described in this section provides the processes and procedures required to successfully produce a test strategy for the prototype demonstration. The test cases have been created through thorough analysis of the system requirements and prototype design. The test approach uses multiple different types of testing to determine whether the prototype interface has been implemented adequately. The test plan also contains a summary of the testing schedule, recording procedures, a list of necessary resources to complete testing, and a description of the testing environment. 3.1 Testing Approach TRAIN is made up of different parts, a user interface, a set of algorithms that generate the functionality, and the database where all of the information is stored. Figure 1 shows the relationship between the customer, training organization, and the server. TRAIN will be tested with several categories of testing, unit, integration, and system Every requirement within each LAB 3 – TRAIN Prototype Test Plan of these parts will be tested with Unit testing. Integration testing will verify that each unit can work together and communicate as bigger subsections of the TRAIN prototype. System testing will include every aspect of TRAIN to demonstrate prototype functionality. Figure 1: The Prototype Functional Component Diagram Each major component of TRAIN will be tested independently, including the user interface, the algorithms (site functionality), and database, through unit tests. Then the system will be tested as interrelated sections with integration testing. After successful integration testing, TRAIN will be tested as a whole with system tests. The test cases will be described in subsequent sections. 4 LAB 3 – TRAIN Prototype Test Plan 5 3.2 Identification of Tests Table 1 lists the entire set of test cases needed to properly demonstrate TRAIN functionality. It is divided into categories to organize unit testing. The test case is described in the "Description" section. Each test case relates to at least one functional requirement, defined in Lab 2. Category ID Description Test Case Description Objective 1.1 User Creation Verify Creation of each type of User and User capabilities 1.2 Organization Creation Demonstrate admin ability to create organization User Edit Demonstrate Admin ability to edit user information 1.3 1 1.4 Organization Edit Demonstrate Admin ability to edit Organization information 1.5 Data Upload Show the Admins data upload functionality Data Edit Demonstrate Admin ability to edit data information Data Update Demonstrate Admin ability to update files attached to data Admin Interface 1.6 1.7 LAB 3 – TRAIN Prototype Test Plan Category ID 2 3 Description Instructor Interface 6 Test Case Description Objective 1.8 Data Download Verify Admin ability to download files attached to data 1.9 Customer Request Confirm customer request, and show course approval 1.10 Course Creation Verify course generation algorithm, demonstrate Admin ability to create course 1.11 Course Finalization Verify course creation 2.1 Instructor Customer Request Confirms Instructors assignment to an organization 3.1 Edit Organizations Confirm functionality when editing organizations. 3.2 Create Student User Confirm functionality of creating a student user. 3.3 Request Training Confirm functionality of requesting training. 3.4 Finalize Course Request Confirm functionality of finalizing course request. Manager Interface LAB 3 – TRAIN Prototype Test Plan Category ID Description 7 Test Case Description Objective 3.5 View Course Request History Confirm functionality of viewing course request history. 3.6 Edited Students Assigned to a Course Confirm functionality when editing students assigned to a course. Course Open Feedback Confirm functionality when giving course open text feedback. View Course Confirm functionality of viewing a course 4.2 Course Feedback Confirm functionality when giving open text course feedback. 5.1 Login Screen Demonstrate valid login screen 5.2 Username and password Authentication Demonstrate the authentication credentials required to login. 5.3 User Access Denial Demonstrate denial of access with incorrect credentials. 5.4 Redirection for Authorized User Redirection to appropriate page for authorized user. 3.7 4.1 4 5 Student Interface Authentication and Access LAB 3 – TRAIN Prototype Test Plan Category ID 6 7 8 Description 8 Test Case Description Objective 6.1 Header Demonstrate each user uses same header. 6.2 Menu Demonstrate each user uses same menu 6.3 User Specific Menu Items Demonstrate menu items are limited by user. 6.4 Menu Link Redirection Demonstrate menu links redirect user to appropriate page. 7.1 Topic Search Demonstrate locating topics by learning objectives 7.2 Learning Objective Search Verify that learning objectives can be used to search for topics 7.3 Filtering Demonstrate that searching by keywords filters through tags to match learning objectives 8.1 User Table Verify the table has been created properly 8.2 Role Table Verify the table has been created properly 8.3 Organization Table Template Algorithm Database 8.4 Topic Table Verify the table has been created properly Verify the table has been created properly LAB 3 – TRAIN Prototype Test Plan Category ID Description 9 Test Case Description Objective 8.5 Course Table Verify the table has been created properly 8.6 Course Session Verify the table has been created properly 8.7 Learning Objective Table Verify the table has been created properly 8.8 Reference Table Verify the table has been created properly 8.9 Tag Table Verify the table has been created properly 8.10 File Table Verify the table has been created properly 8.11 Course Feedback Table Verify the table has been created properly 8.12 Role Table Populated Verify the role table contains all the roles 8.13 Organization data exists Verify the default organization exists 8.13 User data exists Verify the default user exists 8.14 Login with Default user Table 1. Test Cases (This space intentionally left blank.) Verify you can login with the default user LAB 3 – TRAIN Prototype Test Plan 10 3.3 Test Schedule The TRAIN prototype demonstration will take ___ minutes. It will include a walkthrough of the test cases described listed in Table 1. Table 2 lists the order of events within the demonstration. It will begin with a short introduction to the prototype. After the introduction, the database test cases will be validated as each table's schema is displayed. The rest of the demonstration will be mix of interface and algorithm test cases as different parts of the system are validated. Start Time (minutes) 0:00 0:5 0:15 Duration (minutes) 5 10 20 0:35 10 0:45 15 Description Introduction Database Demo Interface Demo -Admin -Manager -Instructor -Student Functionality Demo Test Cases Covered 8.1-8.14 1.0,6.4 4.1 – 4.7 Q&A Table 2. Test Schedule 3.4 Fault Reporting Fault reporting is a necessary component of the testing phase. Proper fault reporting should decrease the duration of time spent on bug fixes after testing. During the demonstration, the developers will be recording results, and success or failure of each test. The test components are defined as Database, Administrator Interface, Instructor Interface, Manager Interface, Student Interface. Table 3 outlines each component, how the test case for each will be validated, and potential failures will be recorded. LAB 3 – TRAIN Prototype Test Plan Component 11 Recording Process - Database Report failures through visual inspection of database records using LINQPad Administrator interface - Document through paper forms - Report failures through visual inspection of output and data saved in database Instructor interface - Document through paper forms - Report failures through visual inspection of output and data saved in database Manager interface - Document through paper forms - Report failures through visual inspection of output and data saved in database Student interface - Document through paper forms - Report failures through visual inspection of output and data saved in database Algorithms - Document through paper forms - Report failures through visual inspection of functional outcome - Document through paper forms Table 3. Fault Reporting and Data Recording (This space intentionally left blank.) LAB 3 – TRAIN Prototype Test Plan 12 3.5 Resource Requirements To demonstrate the prototype, a few hardware and software resources will be required. A desktop work station connected to projector and screen will be required to run and display the demonstration. The desktop must be running a current version of Windows operating system, and must have an up to date version of Internet Explorer, Firefox, and Google Chrome installed. The desktop workstation must also have LINQPad installed to access the database. 3.6 Test Environment The demonstration must be in a facility with enough room to seat a small group of people. The room will have two displays, one on each side of the room. One display will be showing the database, while the other will be running TRAIN. The seating must be adequate so that the audience can view both displays comfortably. The review board as well as the project mentor will be the audience for the demonstration.