CS 411W Lab III Prototype Test Plan/Procedure For ELDERS Prepared by: Robert Matson, Purple Group Date: 04/29/13 ELDERS Test Plan, Matson-ii Table of Contents 1 2 3 Objectives ................................................................................................................... 1 References ................................................................................................................... 2 Test Plan...................................................................................................................... 3 3.1 Testing Approach ................................................................................................ 3 3.2 Identification of Tests ......................................................................................... 3 3.3 Test Schedule ...................................................................................................... 7 3.4 Fault Reporting and Data Recording .................................................................. 8 3.5 Resource Requirements ...................................................................................... 8 3.6 Test Environment ................................................................................................ 8 3.7 Test Responsibilities ........................................................................................... 8 4 Test Procedures ........................................................................................................... 8 4.1 Test Case Names and Identifiers....................................................................... 10 5 Traceability to Requirements .................................................................................... 39 List of Tables Table 1. ELDERS prototype identification of test cases ................................................... 3 Table 2. ELDERS prototype test schedule ........................................................................ 7 Table 3. Traceability matrix for the ELDERS prototype ................................................. 39 ii ELDERS Test Plan, Matson-1 1 Objectives ELDERS is a language revitalizing project to help keep endangered languages from dying out. To make sure the ELDERS project is working functionally, we set up test cases to ensure every possible test will result in a working output. This documentation will show what the test cases have been tested for the prototype. We want to have no issues or errors happening when any user is on it. (this space intentionally left blank) 1 ELDERS Test Plan, Matson-2 2 References Matson, Robert. (2013). Lab I – ELDERS Product Description. Norfolk, VA: Author. Matson, Robert. (2013). Lab II – Prototype Product Specification for ELDERS. Norfolk, VA: Author. (this space intentionally left blank) 2 ELDERS Test Plan, Matson-3 3 Test Plan The following sections of the test plan will discuss the types of tests to be performed, the testing schedule, reporting procedures, resource requirements, the testing environment, and team member responsibilities. 3.1 Testing Approach Performance of the ELDERS prototype will be verified through a variety of different tests. An example is being able to edit your registered user profile. 3.2 Identification of Tests As shown below, the group has split up the test cases. Each category ID has been grouped by a specific description. The test case ID corresponds to the category ID number. The test cases have different descriptions matching with objective of the test case number. Category ID Description Test Case ID 1 Access Control 1.1 1.2 Test Case Description View access tiers and tier permissions Show that access tiers and permissions are implemented. Request higher tier status Show a user may request a higher tier status. Create new access tier Demonstrate process of creating a new access tier. Change default account tier Verify that the default tier may be changed. Edit account tiers Show that the permissions for an access tier may be edited. 1.3 1.4 Objective 1.5 3 ELDERS Test Plan, Matson-4 Verify Access checks Show that all access checks are in place. Create new user Prove that an account can be created. Alert user if username already exists Show that username redundancy is prevented Verify password requirements Verify that the password restrictions are in place. Login as existing account Demonstrate that registered users are able to log in. Login with incorrect information Show that invalid logins call an error. Reset account password Verify that a password may be reset. Change notification settings Demonstrate that a user may change their notification preferences. 3.1 Council to vote on suggested word(s) To expand the Nottoway Language 3.2 Restrict only one vote per council Ensure that the Council member can only make one vote on a suggested word. 1.6 2 User Accounts 2.1 2.2 2.3 2.4 2.5 2.6 2.7 3 Voting 3.3 4 Searching User change vote Change vote due to common error. 3.4 Words that have reached threshold When the majority of mark as approved votes are in the words favor. 3.5 Able to add new word to dictionary Expand the dictionary upon “approved” words. 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.1 4.2 4 ELDERS Test Plan, Matson-5 4.3 Suggest and show suggestions of failed search To suggest alternatives for a returned fail search 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. Nottoway filtered by letter To test that the word filter functions correctly. 4.4 4.5 4.6 4.7 5 History 5.1 6 Suggestions 6.1 6.2 6.3 6.4 7 Administration Forum Suggested words by users To test a list of suggested words by users Prompt to suggest word if no suggested word exists To notify the suggested word if the word does not exist User input of suggested word To test that a suggested word can be inputted 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. Create access controlled sub forums To test that a user’s forum account is the same as their ELDERS 7.1 7.2 8 History of the Nottoway viewable To test that the Nottoway history is displayed. 8.1 8.1 5 ELDERS Test Plan, Matson-6 account. 9 Database 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 database privileges Make sure that user’s privileges are set. 9.5 View the ALPHABET table schema Make sure that the ALPHABET table has the expected columns. 9.6 View the HISTORICAL_DICTIONARY table schema Make sure that the table has the right columns. 9.7 View the EXPANDED_DICTIONARY table schema Make sure that the table has the right columns. View the NUM_VOTES table schema Make sure that the table has the right columns. 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. 9.1 9.2 9.3 9.8 9.9 10 Language 10.1 10.2 11 Versatility Can be viewed on mobile devices Confirming the ability for ELDERS to be viewed 11.1 on a mobile device. 11.2 Can be functional for all major web browsers 6 Confirming that ELDERS can be used correctly through different web browsers ELDERS Test Plan, Matson-7 that are commonly used. Check for software update 12 Maintenance 12.1 Show that there is a means to update software used by ELDERS Figure 1 ELDERS Identification of cases 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. Table 2 ELDERS Prototype Test Schedule 7 ELDERS Test Plan, Matson-8 3.4 Fault Reporting and Data Recording A team member will have the role as a test recorder. This member keeps track on which test case needs to be done. That member will record what test case passes or fails. Each fail will require a fault report on what test case went wrong while keeping the data of the failed output. 3.5 Resource Requirements The use of a virtual machine is required. We want to be able to access into the backend of the prototype. The frontend needs access to a pc or laptop with a working network connection. The user will then be able to see and test the ELDERS prototype. 3.6 Test Environment The test will be done inside a room with access to a wired or wireless network connection. The room needs a working projector to be able to display a large screen of the presentation of the prototype. A computer or laptop will be connected to it so the tester can display the prototype. Two presenters will be at the front discussing and explaining what is happening on the displayed prototype. The tester will write down details throughout the inputs and outputs during the presentation. 3.7 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 8 ELDERS Test Plan, Matson-9 the computer. Taking turns, each test user will execute the test case, explain what they are doing 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) 9 ELDERS Test Plan, Matson-10 4 Test Procedures Detailed test procedures have been created by ELDERS. This will ensure that the test cases will meet the requirements needed for the prototype. 4.1 Test Case Names and Identifiers The ELDERS group met all the requirements needed for the specific test cases. The test cases have initialized steps, inputs, procedures, and expected results. 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 Access administration page 2 Access access tiers 3 Click on a access tier to view permissions Access tiers are displayed. Permissions for each tier are visible. 1 Test Category: 1 Expected Result Description: Request higher tier status 10 ELDERS Test Plan, Matson-11 Test Case: 1.2 Case Name: Requesting tier status Version: 1.0 Written By: Ben Cortina Requirements Fulfilled: 3.1.1.1.2 Purpose: Show a user may request a higher tier status. Setup Conditions: Logged in as existing user Test Case Activity Pass/Fail Comments Request higher tier status 2 Log in as user with permissions to set access tiers 3 VIew pending tier promotion requests. 4 Note the request is listed Expected Result Access tier request is noted. 1 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 1 Pass/Fail Comments Access administration Expected Result Access tier is created and user is assigned 11 ELDERS Test Plan, Matson-12 page Access access tiers 3 Create new tier 4 Set existing user to newly created tier to the new tier. 2 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 1 2 3 4 5 Pass/Fail Comments Access 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 Expected Result User account should be in the default tier. Description: Change a access tier’s permissions 12 ELDERS Test Plan, Matson-13 Test Case: 1.5 Case Name: Edit account tiers Version: 1.0 Written By: Ben Cortina 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. Setup Conditions: Logged in as user with permission to edit access tiers Test Case Activity 1 2 3 4 5 6 Pass/Fail Comments Access 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 Expected Result Permission change is reflected in accounts from that 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 Setup Conditions: ● Component source code accessible 13 Written By: Ben Cortina ELDERS Test Plan, Matson-14 ● Logged in as user with permission to edit access tiers Test Case Activity Pass/Fail Comments 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 Expected Result 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 Setup Conditions: At website home page Test Case Activity 1 Pass/Fail Comments Click the Create an Expected Result account is created 14 ELDERS Test Plan, Matson-15 Account Link Fill in Account Details 3 Click Register 2 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 Version: 1.0 Written By: George Calhoun Setup Conditions: ● At website home page ● An already created account Test Case Activity Pass/Fail Comments Click the Create an Account Link 2 Fill in Account Details with an already used username 3 Click Register Expected Result 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. Version: 1.0 15 Written By: George Calhoun ELDERS Test Plan, Matson-16 Setup Conditions: At website home 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 Setup Conditions: ● At website home page ● Account created Test Case Activity Pass/Fail Comments Fill out User name 2 Fill out password correctly 3 click log in be logged into your account 1 Test Category: 2 Expected Result Description: Making sure only registered users are able to log into 16 ELDERS Test Plan, Matson-17 ELDERS Test Case: 2.5 Case Name: Incorrect log in Version: 1.0 Written By: Ben Cortina Requirements Fulfilled: 3.1.1.5, 3.1.1.5.1, 3.1.1.5.2 Purpose: Show that invalid logins call an error. 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 Setup Conditions: ● At website home page ● Account created Test Case Activity 1 Pass/Fail Comments Click forgot Expected Result Error message after 17 ELDERS Test Plan, Matson-18 password link 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 step 2 email sent to the email address after step 3 2 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. Version: 1.0 Written By: George Calhoun Setup Conditions: ● At website home page ● Account created ● Account logged in Test Case Activity Pass/Fail Comments go to account setting 2 change notifications Expected Result 1 Test Category: 3 notifications changed. Description: Voting 18 ELDERS Test Plan, Matson-19 Test Case: 3.1 Case Name: Suggested Word Vote Version: 1 Requirements Fulfilled: 3.1.2.1 Purpose: To expand the Nottoway Language Written By: Josh Setup Conditions: User logon tab in voting section. Test Case Activity 1 2 3 4 5 Pass/Fail Comments User accesses administration page User searches for word User prompted of non-existing word Selects either search or vote User changes their vote Expected Result User has the opportunity to expand the Nottoway language by voting. Test Category: 3 Description: Voting 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 Written By: Josh Setup Conditions: User logon and each vote only is obtained only once. Test Case Activity 1 Pass/Fail Comments User access administration Expected Result A user has one vote. 19 ELDERS Test Plan, Matson-20 page User votes on word 3 Restricted to one vote per user 2 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 User accesses administration page 2 User accesses past votes 3 User changes vote Expected Result 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 Comments 20 Expected Result ELDERS Test Plan, Matson-21 Total number of user votes have reached the majority so the suggested word is now added. Enough user votes have been received 2 Words that have reached threshold of votes are marked as approved 1 Test Category: 3 Description: Voting 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 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 adds suggested word that has reached threshold of user votes to the dictionary. Administrator notified that word has reached threshold 2 Administrator access administration panel 3 Administrator adds new word to dictionary 1 Test Category: 4 Expected Result Description: Searching the database for an English word 21 ELDERS Test Plan, Matson-22 Test Case: 4.1 Case Name: Successful English Search Version: 1 Written By: Tatiana Requirements Fulfilled: 3.1.2.6, 3.1.2.6.2.*, 3.1.2.6.2 Purpose: To test whether searching by English returns 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 Setup Conditions: At dictionary search page Test Case Activity Pass/Fail Comments Set search to English to Nottoway 2 Enter an English word that isn’t in the database 3 Search Expected Result User is alerted of failed search 1 22 ELDERS Test Plan, Matson-23 Test Category: 4 Description: Test Case: 4.3 Case Name: Search Fail Suggestions Requirements Fulfilled: 3.1.2.6.1.a-3.1.2.6.1.c Purpose: To suggest alternatives for a failed search Version: 1 Written By: Terry Stilwell Setup Conditions: At dictionary search page Pass/Fail Test Case Activity Comment s Set search to English to Nottoway 2 Enter an English word that isn’t in the database 3 Search Expected Result 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 Setup Conditions: At dictionary search page Test Case Activity 1 Pass/Fail Comments Set search to Expected Result Should be able to edit 23 ELDERS Test Plan, Matson-24 English to Nottoway 2 Enter an English word that isn’t in the database 3 Search 4 Get a list of suggested words the word or words that are suggested 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 Comments 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 Description: Failed search notification Test Case: 4.6 Case Name: Search Fail Requirements Purpose: To test whether users receive a notification when they Version: 1 24 Written By: Tatiana ELDERS Test Plan, Matson-25 Fulfilled: 3.1.2.7.1 search for a Nottoway word that doesn’t exist. Setup Conditions: At dictionary search page Test Case Activity Pass/Fail Comments Set search to Nottoway 2 Enter a Nottoway word that isn’t in the database 3 Search Expected Result 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 Setup Conditions: On the syllabary chart page Test Case Activity 1 Pass/Fail Comments Click on a letter in the chart Expected Result All the words that begin with that letter are displayed 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. Version: 1 Setup Conditions: On ELDERS Website 25 Written By: Tatiana ELDERS Test Plan, Matson-26 Test Case Activity 1 Pass/Fail Comments Click link to the Nottoway history Expected Result 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 Setup Conditions: On ELDERS Website Test Case Activity 1 Pass/Fail Comments Show suggested words by user Expected Result Suggested words are displayed 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 Version: 1 Written By: Robert Setup Conditions: On ELDERS Website Test Case Activity 1 Pass/Fail Comments Prompt to suggested word if no Expected Result No words have been suggested, it notifies users of a suggested 26 ELDERS Test Plan, Matson-27 word exists 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 Setup Conditions: On ELDERS Website Test Case Activity 1 Pass/Fail Comments User inputs a suggested word Expected Result The suggested word can be inputted 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 Version: 1 Written By: Robert Setup Conditions: On ELDERS Website Test Case Activity 1 Pass/Fail Comments User submits a suggested word Test Category: 7 Expected Result The suggested word will be submitted to a list of suggested words Description: Website settings 27 ELDERS Test Plan, Matson-28 Test Case: 7.1 Case Name: Administration Version: 1 Requirements Fulfilled: 3.1.2.10 Purpose: To changes settings on the website Written By: Robert Setup Conditions: On ELDERS database Test Case Activity 1 Pass/Fail Comments Edit website settings Expected Result The edit in the settings has changed for the website 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 Version: 1 Written By: Robert Setup Conditions: On ELDERS database Test Case Activity 1 Pass/Fail Comments Edit website permissions Expected Result Permissions have changed for who can and cannot access areas Test Category: 8 Description: Displaying the Forum Test Case: 8.1 Case Name: Forum Version: 1 28 Written By: Tatiana ELDERS Test Plan, Matson-29 Requirements Fulfilled: 3.1.2.11 Purpose: To test that the Forum is displayed. Setup Conditions: On ELDERS Website Test Case Activity 1 Pass/Fail Comments Click link to the Forum page Expected Result The Forum is displayed 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. Version: 1 Written By: Tatiana Setup Conditions: On ELDERS Website, User is logged in Test Case Activity 1 Pass/Fail Comments Click link to the Forum page Expected Result 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 Version: 1 29 Written By: Terry ELDERS Test Plan, Matson-30 DB Requirements Fulfilled: 3.3.1.1 Purpose: Viewing the database proves that it exists. Setup Conditions: MySQL installed and 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 Setup Conditions: Cron job in place with mysqldump that specified date in the file name Test Case Activity Pass/Fail Comments Write a script that includes the mysqldump command 2 Make sure the script creates a file with the date of the dump Expected Result You will see the backed up file in the specified directory of the script. 1 30 ELDERS Test Plan, Matson-31 3 Manually run the cron job or wait until the time set (midnight) Test Category: 9 Description: Database Test Case: 9.3 Case Name: MySQL Version: 1 user Requirements Fulfilled: 3.3.1.3 Purpose: Users must exist in order to access the DB. Written By: Terry Setup Conditions: MySQL installed with a root mysql account with highest privileges Test Case Activity 1 2 3 4 5 Pass/Fail Comments 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 Expected Result 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 Version: 1 31 Written By: Terry ELDERS Test Plan, Matson-32 User Privileges Requirements Fulfilled: 3.3.1.4 Purpose: Make sure that user’s privileges are set. Setup Conditions: MySQL user already created Test Case Activity Pass/Fail Comments 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 Expected Result 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 Setup Conditions: The ALPHABET table is already created with the proper columns. Test Case Activity Pass/Fail Comments 32 Expected Result ELDERS Test Plan, Matson-33 Log into mysql using a user with privileges to read the ALPHABET table 2 Change to the Nottoway DB 3 Type describe ALPHABET You will see the table with the proper columns 1 Test Category: 9 Description: Database Test Case: 9.6 Case Name: HISTORICAL_DIC TIONARY Table Requirements Fulfilled: 3.3.1.6* Purpose: Make sure that the table has the right columns. Version: 1 Written By: Terry Setup Conditions: HISTORICAL_DICTIONARY is created with proper columns. Test Case Activity Pass/Fail Comments Log into mysql using a user with privileges to read the HISTORICA L_DICTION ARY table 2 Change to the Nottoway DB 3 Type describe HISTORICA L_DICTION Expected Result You will see the table with the proper columns 1 33 ELDERS Test Plan, Matson-34 ARY 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 Setup Conditions: EXPANDED_DICTIONARY table is created and has right columns Test Case Activity Pass/Fail Comments Log into mysql using a user with privileges to read the EXPANDED_ DICTIONAR Y table 2 Change to the Nottoway DB 3 Type describe EXPANDED_ DICTIONAR Y Expected Result 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 34 Written By: Terry ELDERS Test Plan, Matson-35 Setup Conditions: At website login page Test Case Activity Pass/Fail Comments Log into mysql using a user with privileges to read the NUM_VOTE S table 2 Change to the Nottoway DB 3 Type describe NUM_VOTE S Expected Result You will see the table with the proper columns 1 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. Version: 1 Written By: Terry Setup Conditions: A user is created and the password is encrypted in the DB Test Case Activity Pass/Fail Comments Log into mysql with the root account. 2 Query the database with the user and password Expected Result You will see the users and their encrypted passwords 1 35 ELDERS Test Plan, Matson-36 columns from the mysql.user table 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. Version: 1 Written By: Tatiana Setup Conditions: On ELDERS 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.3 Case Name: Grammar Requirements Fulfilled: 3.1.2.5 Purpose: Verify the user can access the Nottoway grammar. Version: 1 Written By: Tatiana Setup Conditions: On a page in the language section Test Case Activity 1 Pass/Fail Comments Click on the Grammar link Expected Result Display the basic grammar rules of the Nottoway language 36 ELDERS Test Plan, Matson-37 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 mobile device. Version: 1 Written By: George 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 Setup Conditions: On a computer with multiple Internet Browsers Test Case Activity Pass/Fail Comments Open Internet Explorer 2 Navigate to ELDERS web page 3 Repeat steps 1 and 2 with Firefox 4 Repeat steps 1 Expected Result All 4 browsers should load ELDERS without error, and should all look approximately the same 1 37 ELDERS Test Plan, Matson-38 and 2 with Chrome 5 Repeat steps 1 and 2 with Safari 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 1. Open Joomla administration page 2. Navigate to the Extension Manager 3. Click Update 4. Click purge cache 6 Click FInd Updates Expected Result Any updates for outdated Extensions should be listed. 38 ELDERS Test Plan, Matson-39 5 Traceability to Requirements Each test will provide a requirement that has been met. The table provides a matrix with a requirement ID labeling each row and a test case ID on each 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 1.1 1.2 1.3 1.4 1.5 1.6 2.1 2.2 2.3 2.4 2.5 2.6 Create Tiered Account System 3.1.1.1 X 3.1.1.1.1 3.1.1.1.2 Manage Tier System X X 3.1.1.2 X X X 3.1.1.2.1 X 3.1.1.2.2 X 3.1.1.2.3 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 39 ELDERS Test Plan, Matson-40 User Registration 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 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 X 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 User Account Management 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 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 40 ELDERS Test Plan, Matson-41 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 Database Backup Database Users 3.3.1.1 3.3.1.2 3.3.1.3 3.3.1.4 Database Tables 3.3.1.5 3.3.1.5.a 3.3.1.5.b 41 ELDERS Test Plan, Matson-42 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 X 3.3.4.2 3.3.4.3 Table 3. Traceability Matrix for the ELDERS prototype 42