Lab 3 – Prototype Test Plan and Procedure Outline Prototype Test Plan and Procedure Outline Purple Team Old Dominion University CS 411 - Brunelle Terry Stilwell April 17, 2013 Version 1 Contents ELDERS - 1 Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 2 1 Objectives 2 References 3 Test Plan 3.1 Testing Approach 3.2 Identification of Tests 3.3 Test Schedule 3.4 Fault Reporting and Data Recording 3.5 Resource Requirements 3.6 Test Environment 4 Test Responsibilities 5 Test Procedures 5.1 Test Case Name and Identifier 6 Traceability to Requirements List of Tables Table 1. ELDERS Prototype Test Cases by Category…………………………………………….5 Table 2. ELDERS Prototype Test Schedule………………………………………………………9 Table 3. ELDERS Traceability Matrix ……………………………………………………………..41 Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 3 1 Objectives The purpose of this document is to make sure that the ELDERS prototype is functional. This can be accomplished by going over the test plan and procedures. In a brief overview, this project revolves around the language revival of the Nottoway. With the electronic documentation of this material, the tribe will be able to view, learn, and modify their language through the ELERS product. In order to make sure that the product is working correctly, the group is prepared to demonstrate the functionality of the prototype as each group member is responsible for some part of this presentation. The plan is to go over each test case which will show the interface from the user’s perspective as well as the interaction between the front-end and back-end. (This space intentionally left blank) Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 4 2 References Stilwell, Terry. (2013). Lab 1 – ELDERS Description. Norfolk, VA: Author. Stilwell, Terry. (2013). Lab 2 – Prototype Product Specification for ELDERS. Norfolk, VA: Author. (This space intentionally left blank) Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 5 3 Test Plan The test plan gives an overview for the group’s prototype presentation. It will introduce the approach, identification of tests, and the test schedule. Additionally, fault reporting, data recording, resource requirements, and the test environment are all important aspects of it too. 3.1 Testing Approach The group is taking a simple, directed approach for the prototype testing. One example of this is taking advantage of the information stored in the Historic Dictionary. This data consists of real words given to the group indirectly from Nottoway tribe. For testing, the rest of the information will be already generated or fictional, ranging from account names and information to words added to the language. Furthermore, the approach will focus on the test cases directly for compliance testing. 3.2 Identification of Tests As shown below, the group has split up the test cases into twelve distinct categories. Each category has been grouped by a specific description. The objective for each test case is also given. A test case for each ID will be continued in section 5.1. Category ID Description 1 Access Control Test Test Case Description Case ID Objective 1.1 View access tiers and tier permissions Show that access tiers and permissions are implemented. 1.2 Request higher tier status Show a user may request a higher tier status. Lab 3 – Prototype Test Plan and Procedure Outline 1.3 1.4 Verify Access checks Show that all access checks are in place. Create new user Prove that an account can be created. 2.2 Alert user if username already exists Show that username redundancy is prevented 2.3 Verify password requirements Verify that the password restrictions are in place. 2.4 Login as existing account Demonstrate that registered users are able to log in. 2.5 Login with incorrect information Show that invalid logins call an error. 2.6 Reset account password Verify that a password may be reset. Change notification settings Demonstrate that a user may change their notification preferences. Council to vote on suggested word(s) To expand the Nottoway Language Restrict only one vote per council member Ensure that the Council can only make one vote on a suggested word. User change vote Change vote due to common error. 2.1 2.7 3 Voting Change default account Verify that the default tier may tier be changed. Show that the permissions for an access tier may be edited. 1.6 User Accounts Demonstrate process of creating a new access tier. Edit account tiers 1.5 2 Create new access tier ELDERS - 6 3.1 3.2 3.3 3.4 Words that have When the majority of votes are reached threshold mark in the words favor. as approved 3.5 Able to add new word to dictionary Expand the dictionary upon “approved” words. Lab 3 – Prototype Test Plan and Procedure Outline 4 Searching ELDERS - 7 Search Nottoway words in English To test whether searching by English returns the correct information. Alert of failed search To notify the user that the word searched is not in the database. 4.3 Suggest and show suggestions of failed search To suggest alternatives for a returned fail search 4.4 Edit words that are suggested To give Council an opportunity to change suggested words Search Nottoway words in Nottoway To test whether searching by Nottoway returns the correct information. Alert of failed search To test whether users receive a notification when they search for a Nottoway word that doesn’t exist. 4.7 Nottoway filtered by letter To test that the word filter functions correctly. 4.1 4.2 4.5 4.6 5 History 5.1 History of the Nottoway viewable To test that the Nottoway history is displayed. 6 Suggestions 6.1 Suggested words by users To test a list of suggested words by users 6.2 Prompt to suggest word To notify the suggested word if if no suggested word the word does not exist exists 6.3 User input of suggested To test that a suggested word word can be inputted 6.4 User submission of suggested word To test that a suggest word can be submitted Edit website settings To test that the settings on the website have been changed by the administrator Edit website permissions To test the website's permission level Access Forum To test that the Forum is displayed. 7 Administration 7.1 7.2 8 Forum 8.1 Lab 3 – Prototype Test Plan and Procedure Outline 8.1 9 Database 9.1 9.2 9.3 10 Language Versatility Create access controlled sub forums To test that a user’s forum account is the same as their ELDERS account. View the Nottoway database Viewing the database proves that it exists. Backup the database Prove that the DB is being backed up. Create a MySQL user Users must exist in order to access the DB. 9.4 Assign users sufficient Make sure that user’s privileges database privileges are set. 9.5 View the ALPHABET Make sure that the ALPHABET table schema table has the expected columns. 9.6 View the Make sure that the table has the HISTORICAL_DICTI right columns. ONARY table schema 9.7 View the Make sure that the table has the EXPANDED_DICTIO right columns. NARY table schema 9.8 View the NUM_VOTES table schema Make sure that the table has the right columns. 9.9 Prove password encryption Make sure that the passwords are encrypted in the DB. Access syllabary chart To test that the Syllabary is displayed. Browse grammar Verify the user can access the Nottoway grammar. 10.1 10.2 11 ELDERS - 8 Can be viewed on 11.1 mobile devices Confirming the ability for ELDERS to be viewed on a mobile device. Can be functional for Confirming that ELDERS can all major web browsers be used correctly through 11.2 different web browsers that are commonly used. Lab 3 – Prototype Test Plan and Procedure Outline 12 ELDERS - 9 Check for software 12.1 update Maintenance Show that there is a means to update software used by ELDERS Table 1. ELDERS Prototype Test Cases by Category 3.3 Test Schedule The test schedule can be viewed below. The first five minutes, missing from the table, will be used to briefly introduce the Nottoway. It will also describe how our prototype has fulfilled the tribe’s needs. Start Time Duration Test Objective (Minutes) (Minutes) Category Dependencies Comments 5 6 Prove access tier functionality 1 none none 11 6 Show functional user accounts 2 none none 17 5 Demonstrate the voting system 3 none none 22 5 Dazzle with amazing searching 4 none none 27 5 Blow minds with excellent 5, 6, 7, history linkage, word and 8 suggesting, and administration, lets not forget the handy dandy forum none none 32 8 Run through the Database functionality 9 none none 40 5 Finish up with language content, versatility of the app and maintaining the webapp 10, 11, and 12 none none Table 2. ELDERS Prototype Test Schedule Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 10 3.4 Fault Reporting and Data Recording The Test Recorder will be the one responsible for fault reporting and data recording. During the presentation, this person will keep track of each test case and of their results. This includes any information brought up as suggestions too. 3.5 Resource Requirements The resources required for the prototype demonstration are minimal. On the server side, the resources have already been established for the virtual machine. For the client side, however, a machine or device with an internet connection and a browser is required. 3.6 Test Environment The test environment is simple. Since it will be demonstrated in a conference room, the group will make use of the projector. It will display the website and any back-end information needed by the test cases. The presenter at the time will most likely interact with the display. Also, there will be a machine from the Computer Science department present, which will have the capacity and resources required for the presentation. There will be another person working on this computer as the presenter goes through the test cases. (This space intentionally left blank) Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 11 4 Test Responsibilities In the ELDERS prototype presentation, there will be two presenters, two test users, a database monitor, and a test recorder. The primary speakers will be Tatiana Livingston and George Calhoun, who will work together in presenting the prototype. One of the two presenters will take the other’s job if he/she is unable to attend. They will also provide an introduction and narrative of each test case. Ben Cortina and Josh Fetherolf will be test users as well as operating the computer. Taking turns, each test user will execute the test case, explain what they are doing Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 12 as well as show the expected results. Terry Stilwell will be the database monitor, responsible for displaying and explaining changes to the database when applicable. Robert Matson is the test recorder. He will keep the testing on track and will record what has been done and the result. He will also record what needs to be done should any errors occur. (This space intentionally left blank) 5 Test Procedures A detailed set of test cases has been prepared for testing ELDERS. Each test has been designed to ensure that the ELDERS prototype meets its requirements. These tests will be described in Section 5.1.e following section describes the specific functional, assumption, constraints, and non-functional requirements of the ELDERS project. 5.1 Test Case Name and Identifier Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 13 All test cases provided are designed to ensure that all the requirements of ELDERS have been met. A unique identification number has been provided for each test case. The requirement numbers are also shown with the test cases to show why each test case was created. Test Category: 1 Description: View access tiers and tier permissions Test Case: 1.1 Case Name: Access tier viewing Requirements Fulfilled: 3.1.1.1 Purpose: Show that access tiers and permissions are implemented. Version: 1.0 Written By: Ben Cortina Setup Conditions: Logged in as user with permission to view access tiers Test Case Activity Pass/Fail Comments 1 Access Expected Result Access tiers are displayed. Permissions for each tier are visible. administration page 2 Access access tiers 3 Click on a access tier to view permissions Test Category: 1 Description: Request higher tier status Test Case: 1.2 Case Name: Requesting tier status Version: 1.0 Written By: Ben Cortina Lab 3 – Prototype Test Plan and Procedure Outline Requirements Fulfilled: 3.1.1.1.2 ELDERS - 14 Purpose: Show a user may request a higher tier status. Setup Conditions: Logged in as existing user Test Case Activity Pass/Fail Comments 1 Request higher tier Expected Result Access tier request is noted. status 2 Log in as user with permissions to set access tiers 3 VIew pending tier promotion requests. 4 Note the request is listed Test Category: 1 Description: Create new access tier and prove its creation Test Case: 1.3 Case Name: Create new access tier Requirements Fulfilled: 3.1.1.2.1, 3.1.1.2.3, 3.1.1.2 Purpose: Demonstrate process of creating a new access tier. Version: 1.0 Written By: Ben Cortina Setup Conditions: Logged in as user with permissions to create access tiers Test Case Activity Pass/Fail Comments Expected Result Lab 3 – Prototype Test Plan and Procedure Outline 1 Access ELDERS - 15 Access tier is created and user is assigned to the new tier. administration page 2 Access access tiers 3 Create new tier 4 Set existing user to newly created tier Test Category: 1 Description: Change the default account tier Test Case: 1.4 Case Name: Change default account tier Requirements Fulfilled: 3.1.1.1.1, 3.1.1.2.2, 3.1.1.2 Purpose: Verify that the default tier may be changed. Version: 1.0 Written By: Ben Cortina Setup Conditions: Logged in as user with permissions change access tiers settings Test Case Activity Pass/Fail Comments Expected Result Lab 3 – Prototype Test Plan and Procedure Outline 1 Access 2 3 4 5 ELDERS - 16 User account should be in the default tier. administration page Access access tiers Change default access tier. Create a new account. Show that new account is in the new default tier Test Category: 1 Description: Change a access tier’s permissions Test Case: 1.5 Case Name: Edit account tiers Requirements Fulfilled: 3.1.1.2, 3.1.1.2.4, 3.1.1.2.5, 3.1.1.2.5.* Purpose: Show that the permissions for an access tier may be edited. Version: 1.0 Written By: Ben Cortina Setup Conditions: Logged in as user with permission to edit access tiers Test Case Activity Pass/Fail Comments Expected Result Lab 3 – Prototype Test Plan and Procedure Outline 1 Access 2 3 4 5 6 ELDERS - 17 Permission change is reflected in accounts from that tier. administration page Access access tiers. Click on a access tier to edit permissions Show every permission from 3.1.1.2.5 is listed Edit at least one permission. Prove that the permission is changed for an account in that access tier Test Category: 1 Description: Verify Access checks Test Case: 1.6 Case Name: Access Checks Requirements Fulfilled: 3.3.2.2 Purpose: Show that all access checks are in place. Version: 1 Written By: Ben Cortina Setup Conditions: ● Component source code accessible ● Logged in as user with permission to edit access tiers Test Case Activity Pass/Fail Comments Expected Result Lab 3 – Prototype Test Plan and Procedure Outline For each permission, 1 Access the user tiers. 2 Show that the permission is assignable 3 In the relevant source code, show the section that prevents access Once, 4 Attempt to access with an account that does not have the permission ELDERS - 18 The access is prevented for the tested feature and every feature uses a similar system to block access. Test Category: 2 Description: The method of creating an account Test Case: 2.1 Case Name: Account Creation Requirements Fulfilled: 3.1.1.3, 3.1.1.3.1, 3.1.1.3.3, 3.1.1.3.4 Purpose: Prove that an account can be created. Version: 1.0 Written By: George Calhoun Comments Expected Result Setup Conditions: At website home page Test Case Activity 1 Click the Create an Account Link 2 Fill in Account Details 3 Click Register Pass/Fail account is created Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 2 Description: The method of creating an account Test Case: 2.2 Case Name: Account Creation Requirements Fulfilled: 3.1.1.3.2 Purpose: Show that username redundancy is prevented ELDERS - 19 Version: 1.0 Written By: George Calhoun Comments Expected Result Setup Conditions: ● At website home page ● An already created account Test Case Activity Pass/Fail Click the Create an Account Link 2 Fill in Account Details with an already used username 3 Click Register receive notification that username is already in use 1 Test Category: 2 Description: The method of creating an account Test Case: 2.3 Case Name: Account Creation Requirements Fulfilled: 3.1.1.3.3.* Purpose: Verify that the password restrictions are in place. Setup Conditions: At website home Version: 1.0 Written By: George Calhoun Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 20 page Test Case Activity Pass/Fail Comments Click the Create an Account Link 2 Fill in Account Details with an improper username 3 Click Register Expected Result Receive alert that the password does not fulfill the requirements 1 Test Category: 2 Description: Making sure registered users are able to log into ELDERS Test Case: 2.4 Case Name: log in Requirements Fulfilled: 3.1.1.4, 3.1.1.4.1, 3.1.1.4.2 Purpose: Demonstrate that registered users are able to log in. Version: 1.0 Written By: George Calhoun Comments Expected Result Setup Conditions: ● At website home page ● Account created Test Case Activity Fill out User name 2 Fill out password correctly 3 click log in 1 Pass/Fail be logged into your account Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 2 Description: Making sure only registered users are able to log into ELDERS Test Case: 2.5 Case Name: Incorrect log in Requirements Fulfilled: 3.1.1.5, 3.1.1.5.1, 3.1.1.5.2 Purpose: Show that invalid logins call an error. Version: 1.0 ELDERS - 21 Written By: Ben Cortina Setup Conditions: ● At website home page ● Account created Test Case Activity Pass/Fail Comments Fill out User name 2 Fill out password incorrectly 3 click log in 4 Repeat steps 1-3 with incorrect username Expected Result Does not allow the user to sign in and presents them with an error 1 Test Category: 2 Description: Regaining access to an account when the password is forgotten Test Case: 2.6 Case Name: password reset Requirements Fulfilled: 3.1.1.6.* Purpose: Verify that a password may be reset. Version: 1.0 Written By: George Calhoun Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 22 Setup Conditions: ● At website home page ● Account created Test Case Activity Pass/Fail Comments Click forgot password link 2 fill out box with an incorrect email address for account 3 repeat step 2 with correct email 4 use information in email to reset password Error message after step 2 email sent to the email address after step 3 1 Test Category: 2 Description: Changing why and how often you receive notifications Test Case: 2.7 Case Name: change notification settings Requirements Fulfilled: 3.1.1.8 Purpose: Demonstrate that a user may change their notification preferences. Setup Conditions: ● At website home page ● Account created ● Account logged in Expected Result Version: 1.0 Written By: George Calhoun Lab 3 – Prototype Test Plan and Procedure Outline Test Case Activity Pass/Fail Comments 1 go to account setting 2 change notifications ELDERS - 23 Expected Result notifications changed. Test Category: 3 Description: Voting Test Case: 3.1 Case Name: Suggested Word Vote Requirements Fulfilled: 3.1.2.1 Purpose: To expand the Nottoway Language Version: 1 Written By: Josh Setup Conditions: User logon tab in voting section. Test Case Activity 1 2 3 4 5 Pass/Fail User accesses administration page User searches for word User prompted of non-existing word Selects either search or vote User changes their vote Test Category: 3 Comments Expected Result User has the opportunity to expand the Nottoway language by voting. Description: Voting Lab 3 – Prototype Test Plan and Procedure Outline Test Case: 3.2 Case Name: Voting Restrictions to One. Requirements Fulfilled: 3.1.2.1.1 Purpose: Ensure that the Council can only make one vote on a suggested word. Version: 1 ELDERS - 24 Written By: Josh Setup Conditions: User logon and each vote only is obtained only once. Test Case Activity Pass/Fail Comments User access administration page 2 User votes on word 3 Restricted to one vote per user Expected Result A user has one vote. 1 Test Category: 3 Description: Voting Test Case: 3.3 Case Name: Able to Change Vote. Requirements Fulfilled: 3.1.2.1.2 Purpose: Change vote due to common error. Version: 1 Written By: Josh Setup Conditions: User logon tab in voting section. Test Case Activity Pass/Fail Comments Expected Result Lab 3 – Prototype Test Plan and Procedure Outline User accesses administration page 2 User accesses past votes 3 User changes vote ELDERS - 25 Users are able to change vote at a later time. This updates in the database as still counting only one vote per member. 1 Test Category: 3 Description: Voting Test Case: 3.4 Case Name: Threshold Stamp of Approval. Requirements Fulfilled: 3.1.2.1.3* Purpose: When the majority of votes are in the words favor. Version: 1 Written By: Josh Setup Conditions: Database will have a count on each word. Test Case Activity Pass/Fail Enough user votes have been received 2 Words that have reached threshold of votes are marked as approved Expected Result Total number of user votes have reached the majority so the suggested word is now added. 1 Test Category: 3 Comments Description: Voting Lab 3 – Prototype Test Plan and Procedure Outline Test Case: 3.5 Case Name: Adding New Word to Dictionary Requirements Fulfilled: 3.1.2.2 Purpose: Expand the dictionary upon “approved” words. Version: 1 ELDERS - 26 Written By: Josh Setup Conditions: Database sees a majority vote and prompts the admin to add to dictionary Test Case Activity Pass/Fail Comments Administrator notified that word has reached threshold 2 Administrator access administration panel 3 Administrator adds new word to dictionary Expected Result Administrator adds suggested word that has reached threshold of user votes to the dictionary. 1 Test Category: 4 Description: Searching the database for an English word Test Case: 4.1 Case Name: Successful English Search Requirements Fulfilled: 3.1.2.6, 3.1.2.6.2.*, 3.1.2.6.2 Purpose: To test whether searching by English returns Version: 1 Written By: Tatiana Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 27 the correct information. Setup Conditions: At dictionary search page Test Case Activity Pass/Fail Comments Set search to English to Nottoway 2 Enter an English word that is in the database 3 Search Expected Result The searched word and all of the data stored for it are displayed. 1 Test Category: 4 Description: Test Case: 4.2 Case Name: Search Fail Requirements Fulfilled: 3.1.2.6.1 Purpose: To test what the search will return if it fails to find a word Version: 1 Written By: Terry Stilwell Comments Expected Result Setup Conditions: At dictionary search page Test Case Activity Set search to English to Nottoway 2 Enter an English word that isn’t in the database 3 Search 1 Pass/Fail User is alerted of failed search Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 4 Description: Test Case: 4.3 Case Name: Search Fail Suggestions ELDERS - 28 Version: 1 Written By: Terry Stilwell Comments Expected Result Requirements Purpose: To suggest Fulfilled: 3.1.2.6.1.a- alternatives for a 3.1.2.6.1.c failed search Setup Conditions: At dictionary search page Test Case Activity Pass/Fail Set search to English to Nottoway 2 Enter an English word that isn’t in the database 3 Search Should see suggested words, and votes for suggested words 1 Test Category: 4 Description: Test Case: 4.4 Case Name: Edit words that are suggested Requirements Fulfilled: 3.1.2.6.1.d Purpose: To give the user an opportunity to change suggested words Version: 1 Written By: Terry Stilwell Comments Expected Result Setup Conditions: At dictionary search page Test Case Activity Pass/Fail Lab 3 – Prototype Test Plan and Procedure Outline Set search to English to Nottoway 2 Enter an English word that isn’t in the database 3 Search 4 Get a list of suggested words ELDERS - 29 Should be able to edit the word or words that are suggested 1 Test Category: 4 Description: Searching the database for a Nottoway word Test Case: 4.5 Case Name: Version: 1 Successful Nottoway Search Requirements Fulfilled: 3.1.2.7, 3.1.2.7.2.*, 3.1.2.7.2 Purpose: To test whether searching by Nottoway returns the correct information. Written By: Tatiana Setup Conditions: At dictionary search page Test Case Activity Pass/Fail Set search to Nottoway 2 Enter a Nottoway word that is in the database 3 Search Expected Result The searched word and all of the data stored for it are displayed. 1 Test Category: 4 Comments Description: Failed search notification Lab 3 – Prototype Test Plan and Procedure Outline Test Case: 4.6 Case Name: Search Fail Requirements Fulfilled: 3.1.2.7.1 Purpose: To test whether users receive a notification when they search for a Nottoway word that doesn’t exist. ELDERS - 30 Version: 1 Written By: Tatiana Comments Expected Result Setup Conditions: At dictionary search page Test Case Activity Pass/Fail Set search to Nottoway 2 Enter a Nottoway word that isn’t in the database 3 Search Notify user word doesn’t exist 1 Test Category: 4 Description: Filter by word Test Case: 4.7 Case Name: Filter Requirements Fulfilled: 3.1.2.4 Purpose: To test that the word filter functions correctly. Version: 1 Written By: Tatiana Comments Expected Result Setup Conditions: On the syllabary chart page Test Case Activity 1 Click on a letter in the chart Pass/Fail All the words that begin with that letter are displayed Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 5 Description: Displaying the Nottoway history Test Case: 5.1 Case Name: History Requirements Fulfilled: 3.1.2.8 Purpose: To test that the Nottoway history is displayed. ELDERS - 31 Version: 1 Written By: Tatiana Comments Expected Result Setup Conditions: On ELDERS Website Test Case Activity 1 Pass/Fail Click link to the Nottoway history The Nottoway History is displayed Test Category: 6 Description: Suggested words by users Test Case: 6.1 Case Name: Suggestions Requirements Fulfilled: 3.1.2.9 Purpose: To show what words have been already suggested by current users Version: 1 Written By: Robert Comments Expected Result Setup Conditions: On ELDERS Website Test Case Activity 1 Show suggested words by user Pass/Fail Suggested words are displayed Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 6 Description: Prompt to suggest words Test Case: 6.2 Case Name: Suggestions Requirements Fulfilled: 3.1.2.9 Purpose: To let the users know about suggested word ELDERS - 32 Version: 1 Written By: Robert Comments Expected Result Setup Conditions: On ELDERS Website Test Case Activity 1 Pass/Fail Prompt to suggested word if no word exists No words have been suggested, it notifies users of a suggested word from the user Test Category: 6 Description: Input suggested word Test Case: 6.3 Case Name: Suggestions Requirements Fulfilled: 3.1.2.9.1 Purpose: To be able to input a suggested word Version: 1 Written By: Robert Comments Expected Result Setup Conditions: On ELDERS Website Test Case Activity 1 User inputs a suggested word Pass/Fail The suggested word can be inputted Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 6 Description: Submit suggested words Test Case: 6.4 Case Name: Suggestions Requirements Fulfilled: 3.1.2.9.2 Purpose: To be able to submit a suggested word ELDERS - 33 Version: 1 Written By: Robert Comments Expected Result Setup Conditions: On ELDERS Website Test Case Activity 1 Pass/Fail User submits a suggested word The suggested word will be submitted to a list of suggested words Test Category: 7 Description: Website settings Test Case: 7.1 Case Name: Administration Requirements Fulfilled: 3.1.2.10 Purpose: To changes settings on the website Version: 1 Written By: Robert Comments Expected Result Setup Conditions: On ELDERS database Test Case Activity 1 Edit website settings Pass/Fail The edit in the settings has changed for the website Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 7 Description: Website permissions Test Case: 7.2 Case Name: Administrations Requirements Fulfilled: 3.1.2.10 Purpose: To change permissions for administrators and users ELDERS - 34 Version: 1 Written By: Robert Comments Expected Result Setup Conditions: On ELDERS database Test Case Activity 1 Pass/Fail Edit website permissions Permissions have changed for who can and cannot access areas Test Category: 8 Description: Displaying the Forum Test Case: 8.1 Case Name: Forum Requirements Fulfilled: 3.1.2.11 Purpose: To test that the Forum is displayed. Version: 1 Written By: Tatiana Comments Expected Result Setup Conditions: On ELDERS Website Test Case Activity 1 Click link to the Forum page Pass/Fail The Forum is displayed Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 8 Description: Corresponding forum account and ELDERS account Test Case: 8.2 Case Name: Forum Account Requirements Fulfilled: 3.1.2.11.2 Purpose: To test that a user’s forum account is the same as their ELDERS account. ELDERS - 35 Version: 1 Written By: Tatiana Comments Expected Result Setup Conditions: On ELDERS Website, User is logged in Test Case Activity 1 Pass/Fail Click link to the Forum page The Forum is displayed and the User is logged in to the forum with an account that corresponds with their ELDERS account. Test Category: 9 Description: Database Test Case: 9.1 Case Name: View DB Requirements Fulfilled: 3.3.1.1 Purpose: Viewing the database proves that it exists. Setup Conditions: MySQL installed and Version: 1 Written By: Terry Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 36 Nottoway database created Test Case Activity Pass/Fail Comments SSH into server and then connect to MySQL 2 Type “show databases;” Expected Result You will see the database listed. 1 Test Category: 9 Description: Database Test Case: 9.2 Case Name: DB Backup Requirements Fulfilled: 3.3.1.2, 3.3.4.1 Purpose: Prove that the DB is being backed up. Version: 1 Written By: Terry Comments Expected Result Setup Conditions: Cron job in place with mysqldump that specified date in the file name Test Case Activity Pass/Fail Lab 3 – Prototype Test Plan and Procedure Outline Write a script that includes the mysqldump command 2 Make sure the script creates a file with the date of the dump 3 Manually run the cron job or wait until the time set (midnight) ELDERS - 37 You will see the backed up file in the specified directory of the script. 1 Test Category: 9 Description: Database Test Case: 9.3 Case Name: MySQL user Requirements Fulfilled: 3.3.1.3 Purpose: Users must exist in order to access the DB. Version: 1 Written By: Terry Comments Expected Result Setup Conditions: MySQL installed with a root mysql account with highest privileges Test Case Activity Pass/Fail Lab 3 – Prototype Test Plan and Procedure Outline 1 2 3 4 5 Log into mysql with the root account Create a mysql user using the appropriate syntax Set privileges for that mysql user Flush the database Query the DB for a list of users ELDERS - 38 You will see a list of users that includes the newly created one. Test Category: 9 Description: Database Test Case: 9.4 Case Name: MySQL User Privileges Requirements Fulfilled: 3.3.1.4 Purpose: Make sure that user’s privileges are set. Version: 1 Written By: Terry Comments Expected Result Setup Conditions: MySQL user already created Test Case Activity Pass/Fail Lab 3 – Prototype Test Plan and Procedure Outline Once logged into mysql, create a user, a new table, set privileges for the new user to write to that table, and flush privileges 2 Using the new user, insert information into the new table 3 Query the new table to see the inserted row ELDERS - 39 The new user will be able to write to the new table and the change can be seen. 1 Test Category: 9 Description: Database Test Case: 9.5 Case Name: ALPHABET Table Requirements Fulfilled: 3.3.1.5* Purpose: Make sure that the ALPHABET table has the expected columns. Version: 1 Written By: Terry Comments Expected Result Setup Conditions: The ALPHABET table is already created with the proper columns. Test Case Activity Pass/Fail Lab 3 – Prototype Test Plan and Procedure Outline Log into mysql using a user with privileges to read the ALPHABET table 2 Change to the Nottoway DB 3 Type describe ALPHABET ELDERS - 40 You will see the table with the proper columns 1 Test Category: 9 Description: Database Test Case: 9.6 Case Name: Version: 1 HISTORICAL_DIC TIONARY Table Requirements Fulfilled: 3.3.1.6* Purpose: Make sure that the table has the right columns. Written By: Terry Setup Conditions: HISTORICA L_DICTION ARY is created with proper columns. Test Case Activity Pass/Fail Comments Expected Result Lab 3 – Prototype Test Plan and Procedure Outline Log into mysql using a user with privileges to read the HISTORICAL_D ICTIONARY table 2 Change to the Nottoway DB 3 Type describe HISTORICAL_D ICTIONARY ELDERS - 41 You will see the table with the proper columns 1 Test Category: 9 Description: Database Test Case: 9.7 Case Name: EXPANDED_DICT IONARY Table Requirements Fulfilled: 3.3.1.7* Purpose: Make sure that the table has the right columns. Version: 1 Written By: Terry Comments Expected Result Setup Conditions: EXPANDED _DICTIONA RY table is created and has right columns Test Case Activity Pass/Fail Lab 3 – Prototype Test Plan and Procedure Outline Log into mysql using a user with privileges to read the EXPANDED_DI CTIONARY table 2 Change to the Nottoway DB 3 Type describe EXPANDED_DI CTIONARY ELDERS - 42 You will see the table with the proper columns 1 Test Category: 9 Description: Database Test Case: 9.8 Case Name: NUM_VOTES Table Requirements Fulfilled: 3.3.1.8* Purpose: Make sure that the table has the right columns. Version: 1 Written By: Terry Comments Expected Result Setup Conditions: At website login page Test Case Activity Log into mysql using a user with privileges to read the NUM_VOTES table 2 Change to the Nottoway DB 3 Type describe NUM_VOTES 1 Pass/Fail You will see the table with the proper columns Lab 3 – Prototype Test Plan and Procedure Outline Test Category: 9 Description: Database Test Case: 9.9 Case Name: Password Encryption Requirements Fulfilled: 3.3.2.1 Purpose: Make sure that the passwords are encrypted in the DB. ELDERS - 43 Version: 1 Written By: Terry Comments Expected Result Setup Conditions: A user is created and the password is encrypted in the DB Test Case Activity Pass/Fail Log into mysql with the root account. 2 Query the database with the user and password columns from the mysql.user table You will see the users and their encrypted passwords 1 Test Category: 10 Description: Displaying the Syllabary Test Case: 10.1 Case Name: Syllabary Requirements Fulfilled: 3.1.2.3 Purpose: To test that the Syllabary is displayed. Setup Conditions: On ELDERS Version: 1 Written By: Tatiana Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 44 Website Test Case Activity 1 Pass/Fail Comments Click link to language section Expected Result Syllabary chart displayed Test Category: 10 Description: Browse the Grammar Test Case: 10.2 Case Name: Grammar Requirements Fulfilled: 3.1.2.5 Purpose: Verify the user can access the Nottoway grammar. Version: 1 Written By: Tatiana Comments Expected Result Setup Conditions: On a page in the language section Test Case Activity 1 Pass/Fail Click on the Grammar link Display the basic grammar rules of the Nottoway language Test Category: 11 Description: Viewing ELDERS on a mobile device Test Case: 11.1 Case Name: Mobility Requirements Fulfilled: 3.3.4.2 Purpose: Confirming the ability for ELDERS to be viewed on a Version: 1 Written By: George Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 45 mobile device. Setup Conditions: Using a mobile device Test Case Activity 1 Pass/Fail Comments Navigate to the ELDERS web page using the device Expected Result The ELDERS web page looks the same as when viewing it through a computer. Test Category: 11 Description: Viewing ELDERS through multiple web browsers Test Case: 11.2 Case Name: Versatility Requirements Fulfilled: 3.3.4.3 Purpose: Confirming that ELDERS can be used correctly through different web browsers that are commonly used. Version: 1 Written By: George Comments Expected Result Setup Conditions: On a computer with multiple Internet Browsers Test Case Activity Pass/Fail Lab 3 – Prototype Test Plan and Procedure Outline 1 2 3 4 5 Open Internet Explorer Navigate to ELDERS web page Repeat steps 1 and 2 with Firefox Repeat steps 1 and 2 with Chrome Repeat steps 1 and 2 with Safari ELDERS - 46 All 4 browsers should load ELDERS without error, and should all look approximately the same Test Category: 12 Description: Check for software update Test Case: 12.1 Case Name: Software Update Requirements Fulfilled: 3.3.4.3 Purpose: Show that there is a means to update software used by ELDERS Version: 1 Written By: Ben Cortina Setup Conditions: On a computer with multiple Internet Browsers Test Case Activity Pass/Fail Comments Expected Result Lab 3 – Prototype Test Plan and Procedure Outline 1 2 3 4 5 Open Joomla administration page Navigate to the Extension Manager Click Update Click purge cache Click Find Updates ELDERS - 47 Any updates for outdated Extensions should be listed. (This space intentionally left blank) 6 Traceability to Requirements The purpose of each test is to prove a set of requirements have been met. Table 3 provides an extensive matrix with a requirement ID labeling each row and a test case ID on each Lab 3 – Prototype Test Plan and Procedure Outline ELDERS - 48 column. In the resulting grid, an X means that the requirement on that row is fulfilled by the test case on that column. Test Case ID Component Requirement ID Create Tiered Account System 3.1.1.1 1.1 1.2 1.3 Manage Tier System 3.1.1.2 3.1.1.2.1 X X X X X X 3.1.1.2.2 3.1.1.2.3 1.5 X 3.1.1.1.1 3.1.1.1.2 1.4 X X 3.1.1.2.4 X 3.1.1.2.5 X 3.1.1.2.5.a X 3.1.1.2.5.b X 3.1.1.2.5.c X 3.1.1.2.5.d X 3.1.1.2.5.e X 3.1.1.2.5.f X 3.1.1.2.5.g X 3.1.1.2.5.h X 3.1.1.2.5.i X 3.1.1.2.5.j X 3.1.1.2.5.k X 3.1.1.2.5.l X 3.1.1.2.5.m X 3.1.1.2.5.n X 3.1.1.2.5.o X 3.1.1.2.5.p X 3.1.1.2.5.q X 1.6 2.1 2.2 2.3 2.4 2.5 2.6 Lab 3 – Prototype Test Plan and Procedure Outline User Registration ELDERS - 49 3.1.1.2.5.r X 3.1.1.2.5.s X 3.1.1.2.5.t X 3.1.1.3 X 3.1.1.3.1 X 3.1.1.3.2 3.1.1.3.3 X 3.1.1.3.3.a X 3.1.1.3.3.b X 3.1.1.3.3.c X 3.1.1.3.3.d X 3.1.1.3.4 User Login X X 3.1.1.4 X 3.1.1.4.1 X 3.1.1.4.2 X 3.1.1.5 X 3.1.1.5.1 X 3.1.1.5.2 X User Account Management 3.1.1.6 3.1.1.6.1 X 3.1.1.6.2 X 3.1.1.7 3.1.1.8 Voting 3.1.2.1 3.1.2.1.1 3.1.2.1.2 3.1.2.1.2.a 3.1.2.1.3 3.1.2.1.3.a Grammar 3.1.2.3 3.1.2.5 Dictionary 3.1.2.2 3.1.2.4 3.1.2.6 Lab 3 – Prototype Test Plan and Procedure Outline 3.1.2.6.1 3.1.2.6.1.a 3.1.2.6.1.b 3.1.2.6.1.c 3.1.2.6.1.d 3.1.2.6.2 3.1.2.6.2.a 3.1.2.6.2.b 3.1.2.6.2.c 3.1.2.6.2.d 3.1.2.6.2.e 3.1.2.6.2.f 3.1.2.7 3.1.2.7.1 3.1.2.7.2 3.1.2.7.2.a 3.1.2.7.2.b 3.1.2.7.2.c 3.1.2.7.2.d 3.1.2.7.2.e 3.1.2.7.2.f 3.1.2.7.2.g Website 3.1.2.8 3.1.2.9 3.1.2.9.1 3.1.2.9.2 3.1.2.10 Suggestion 3.1.2.11 3.1.2.11.1 3.1.2.11.2 Database Creation 3.3.1.1 Database Backup 3.3.1.2 Database Users 3.3.1.3 3.3.1.4 ELDERS - 50 Lab 3 – Prototype Test Plan and Procedure Outline Database Tables ELDERS - 51 3.3.1.5 3.3.1.5.a 3.3.1.5.b 3.3.1.6 3.3.1.6.a 3.3.1.6.b 3.3.1.6.c 3.3.1.6.d 3.3.1.6.e 3.3.1.7 3.3.1.7.a 3.3.1.7.b 3.3.1.7.c 3.3.1.7.d 3.3.1.7.e 3.3.1.8 3.3.1.8.a 3.3.1.8.b Encryption 3.3.2.1 Authentication 3.3.2.2 Update 3.3.3.1 Reliability 3.3.4.1 3.3.4.2 3.3.4.3 Table 3. ELDERS Traceability Matrix X