Test Plan and Cases (TPC)Version 1.0 Version no 1.00
I.Test Plan and Cases (TPC)
Smart Locks Control
Team 05
Team members / RolesVaibhav Vishal / Project Manager, Life Cycle Planner
Dan Barazesh / Software Architect, Feasibility Analyst, Developer
Alejandro Monroy / NDI/NCS Acquirer & Evaluator, Tester, Developer
Hao-Yun Yang / Requirements Engineer, UML Modeler, Developer
Katarzyna Ruszowska / UML Modeler, Quality Focal Point, Developer
Zhe Wang / Prototyper, Operational Concept Engineer, Developer
Diego Brandao / IIV&V, Software Architect, Developer
10/15/2017
II.Version History
Date / Author / Version / Changes made / Rationale10/15/17 / KR / 1.0 / ●Initial Release / ●Released for DCR
III.Table of Contents
TEST PLAN AND CASES (TPC)I
VERSION HISTORYII
TABLE OF CONTENTSIII
TABLE OF TABLESIV
TABLE OF FIGURESV
1.7
2.8
2.18
2.28
2.38
2.49
3.9
3.19
3.21
3.315
3.4 TC-04: Add Code16
3.5TC-05: Edit Code17
3.6TC-06: Delete Code18
3.7TC-07: Group Locks19
3.8TC-08: View Logs22
3.9TC-09: View Device Status23
3.10TC-10: View Lock Identifier and Code25
4.26
4.126
4.226
4.326
1
TPC_DCP_F17a_T05_V1.0Version Date: 10/15/17
Test Plan and Cases (TPC)Version 1.0 Version no 1.00
IV.Table of Tables
Table 1: Hardware Preparation8
Table 2: Software Preparation8
Table 3: Requirements Traceability Matrix9
Table 4: TC-01-01 Create New User from Higher-Level Account10
Table 5: TC-01-02 Log in and Test Functionality with New User Account10
Table 6: TC-02-01 Change Username13
Table 7: TC-02-02 Change Password13
Table 8: TC-02-03 Change Account Name14
Table 9: TC-03-01 Delete User from Higher-Level Account15
Table 10: TC-04-01 Add Code16
Table 11: TC-05-01 Edit Code17
Table 12: TC-06-01 Delete Code19
Table 13: TC-07-01 Create Lock Group20
Table 14: TC-07-02 Add Lock to Group21
Table 15: TC-07-03 Delete Lock from Group21
Table 16: TC-08-01 View All Logs22
Table 17: TC-08-02 Filter Log Files23
Table 18: TC-09-01 View Lock Status24
Table 19: TC-09-02 View Hub Status25
Table 20: TC-10-01 View Lock Identifier and Code26
1
TPC_DCP_F17a_T05_V1.0Version Date: 10/15/17
Test Plan and Cases (TPC)Version 1.0 Version no 1.00
1
TPC_DCP_F17a_T05_V1.0Version Date: 10/15/17
Test Plan and Cases (TPC)Version 1.0 Version no 1.00
1.Introduction
This document describes the test cases and acceptance criteria to ensure the satisfaction of the win-win conditions documented in winbook. The test plan comprises of unit testing, integration testing, and verification and validation testing. The developers test the frontend, backend, and SmartApp elements independently before integrating them and testing the system. Finally, we test the system to ensure it stays true to the specifications and the needs of the client.
2.Test Strategy and Preparation
We created a series of test cases to ensure the functionality and reliability of each of the requirements recorded on winbook. Test cases include both sunny day and rainy-day scenarios. Both priority and risk level of the associated win condition factor into the chronological order of test performance to assure that we will meet all success-critical requirements possible before moving on to additional features.
a)Hardware preparation
Table 1: Hardware Preparation
Hardware / DescriptionServers / Samsung servers must be running properly.
Internet Devices / Computers and phones with Internet access and different browsers installed.
Locks / Multiple Schlage FE599 locks.
Hubs / At least one Samsung SmartThings hub.
b)Software preparation
Table 2: Software Preparation
Software / DescriptionWeb Browser / The user needs a web browser and access to the Internet. Ideally tests should be run from several different devices and on various web browsers.
c)Other pre-test preparations
No additional pre-test preparations.
d)Requirements Traceability
Table 3: Requirements Traceability Matrix
Requirement ID / Verification Type / Test Case ID (if applicable)OC-1: Lock Management / Testing / TC-04-01, TC-04-02, TC-05-01, TC-06-01, TC-07-01, TC-07-02, TC-08-01, TC-08-02
OC-2: User Control / Testing / TC-01-01, TC-01-02, TC-02-01, TC-02-02, TC-02-03, TC-03-01, TC-03-02
OC-3: Device Status / Testing / TC-09-01, TC-09-02, TC-10-01
3.Test Identification
a)Test Identifier
TC-01 Add User
(1)Test Level
Integration Testing
(2)Test Class
Capability Testing
(3)Test Completion Criteria
The test suite will be considered complete when:
●A user can create a lower-level account.
●A user can log into the newly created account and successfully use all of the functions available to that level of account according to the specification.
●Lower-level account defined as:
○House Manager, House Staff for Administrator
○House Staff for House Manager
(4)Test Cases
Table 4: TC-01-01 Create New User From Higher-Level Account
Test Case Number / TC-01-01 Create New User From Higher-Level AccountTest Item / This test verifies that 1) An Administrator can create a new House Manager or House Staff account; 2) A House Manager can create a new House Staff account.
Test Priority / M (Must Have)
Pre-conditions / The tester must be logged into an Administrator level account on our system.
Post-conditions / After entering the required information and clicking “Create Account”, the system should display an “account successfully created” message.
Input Specifications / Account name, name, password, user access level for the new accounts.
Expected Output Specifications / The system should generate and display a “account successfully created” message for each newly created account.
Pass/Fail Criteria / Pass Criteria: A success message displayed on the web application after the tester clicks “Create Account”
Fail Criteria: A failure message displayed on the web application after the tester clicks “Create Account”
Assumptions and Constraints / A functional Administrator level account exists on our system.
Dependencies / None
Traceability / WC_4577, WC_4517
Table 5: TC-01-02 Log in and Test Functionality with New User Account
Test Case Number / TC-01-01 Log in and Test Functionality with New User AccountTest Item / This test verifies that the newly created accounts from TC-01-01 exist in our system and have full functionality.
Test Priority / M (Must Have)
Pre-conditions / The tester must have created new accounts from a higher-level account, as specified in TC-01-01..
Post-conditions / The newly created accounts should exist in our system.
Input Specifications / The tester must log into our system with the usernames and passwords given to the new accounts in the previous test.
Expected Output Specifications / After login, the system should display the correct dashboard for the access level defined for that account.
Pass/Fail Criteria / Pass Criteria: For each account created in TC-01-01, the user should be able to sign in with the account name and password chosen and be able to perform all of the functions that should be available to an account of the access level granted according to the specification.
Fail Criteria: The tester cannot login with the chosen account name and password or after login, the functionalities present do not match the access level granted.
Assumptions and Constraints / The tester has the account names and passwords for the accounts created in TC-01-01.
Dependencies / TC-01-01
Traceability / WC_4577, WC_4517
b)Test Identifier
TC-02 Edit User
(1)Test Level
Integration Testing.
(2)Test Class
Capability Testing.
(3)Test Completion Criteria
The test suite will be considered complete when:
●The user can sign into the modified account with the new account name and password chosen.
●The username displayed on the dashboard matches the new username chosen.
●The user can no longer sign into the modified account with the old account name and password.
(4)Test Cases
Table 6: TC-02-01 Change Username
Test Case Number / TC-02-01 Change UsernameTest Item / This test verifies that 1) An Administrator can change the username of a House Manager or House Staff account; 2) A House Manager can change the username of a House Staff account.
Test Priority / S (Should Have)
Pre-conditions / The tester must be logged into an Administrator account for the first part of the test and a House Manager account for the second part.
Post-conditions / The desired new username should replace all occurrences of the former username in the database and on the user interface.
Input Specifications / Desired new username.
Expected Output Specifications / The system should display a “user successfully updated” message.
Pass/Fail Criteria / Pass Criteria: The desired new username should have completely replaced the former username within the system.
Fail Criteria: The username has not changed within the system or has changed to something other than the input new username.
Assumptions and Constraints / Functional Administrator, House Manager, and House Staff accounts exist in the system.
Dependencies / None
Traceability / WC_4577, WC_4517
Table 7: TC-02-02 Change Password
Test Case Number / TC-02-02 Change PasswordTest Item / This test verifies that 1) An Administrator can change the password of a House Manager or House Staff account; 2) A House Manager can change the password of a House Staff account.
Test Priority / S (Should Have)
Pre-conditions / The tester must be logged into an Administrator account for the first part of the test and a House Manager account for the second part.
Post-conditions / The user of the modified account should be able to log in using the desired new password and the former password should no longer work.
Input Specifications / Desired new password.
Expected Output Specifications / The system should display a “user successfully updated” message.
Pass/Fail Criteria / Pass Criteria: The user of the modified account should be able to log in using the new password and the former password should no longer work.
Fail Criteria: The user cannot log in using the new password or the former password still works.
Assumptions and Constraints / Functional Administrator, House Manager, and House Staff accounts exist in the system.
Dependencies / None
Traceability / WC_4577, WC_4517
Table 8: TC-02-03 Change Account Name
Test Case Number / TC-02-03 Change Account NameTest Item / This test verifies that 1) An Administrator can change the account name of a House Manager or House Staff account; 2) A House Manager can change the account name of a House Staff account.
Test Priority / S (Should Have)
Pre-conditions / The tester must be logged into an Administrator account for the first part of the test and a House Manager account for the second part.
Post-conditions / The user of the modified account should be able to log in using the desired new account name and the former account name should no longer work.
Input Specifications / Desired new account name.
Expected Output Specifications / The system should display a “user successfully updated” message.
Pass/Fail Criteria / Pass Criteria: The user of the modified account should be able to log in using the new account name and the former account name should no longer work.
Fail Criteria: The user cannot log in using the new account name or the former account name still works.
Assumptions and Constraints / Functional Administrator, House Manager, and House Staff accounts exist in the system.
Dependencies / None
Traceability / WC_4577, WC_4517
c)Test Identifier
TC-03 Delete User
(1)Test Level
Integration Testing
(2)Test Class
Capability Testing
(3)Test Completion Criteria
The test will be considered complete when:
●A user can delete a lower-level account.
●The user can no longer log into the deleted account.
●Lower-level account defined as:
○House Manager, House Staff for Administrator
○House Staff for House Manager
(4)Test Cases
Table 9: TC-03-01 Delete User From Higher-Level Account
Test Case Number / TC-03-01 Delete User From Higher-Level AccountTest Item / This test verifies that 1) An Administrator can delete a House Manager or House Staff account; 2) A House Manager can delete a House Staff account.
Test Priority / S (Should Have)
Pre-conditions / The tester must be logged into an Administrator level account on our system for the first part and a House Manager account for the second.
Post-conditions / The deleted account should no longer exist in the system.
Input Specifications / Account to delete.
Expected Output Specifications / The system should generate and display an “account successfully deleted” message.
Pass/Fail Criteria / Pass Criteria: The deleted account no longer exists within the system.
Fail Criteria: The deleted account still exists in the system.
Assumptions and Constraints / Functional Administrator, House Manager, and House Staff accounts exist within the system.
Dependencies / None
Traceability / WC_4577, WC_4517
d)Test Identifier
TC-04 Add Code
(1)Test Level
Integration Testing
(2)Test Class
Capability Testing
(3)Test Completion Criteria
The test will be considered complete when:
●The user can use the newly added code to manipulate the lock.
(4)Test Cases
Table 10: TC-04-01 Add Code
Test Case Number / TC-04-01 Add CodeTest Item / This test verifies that 1) an Administrator can add a new code slot and assign it to a House Manager or House Staff user; 2) a House Manager can add a new code slot and assign it to a House Staff user.
Test Priority / M (Must Have)
Pre-conditions / The tester must be logged into an Administrator level account on our system for the first part and a House Manager account for the second.
Post-conditions / The user should be able to use the added code to manipulate the associated lock.
Input Specifications / New code and user to assign the code slot to.
Expected Output Specifications / The system should generate and display a “code successfully added” message.
Pass/Fail Criteria / Pass Criteria: The user can manipulate the associated lock with the newly added code.
Fail Criteria: The user cannot manipulate the associated lock with the newly added code.
Assumptions and Constraints / Functional Administrator, House Manager, and House Staff accounts exist within the system. At least one lock exists within the system.
Dependencies / None
Traceability / WC_4573, WC_4524, WC_4522
e)Test Identifier
TC-05 Edit Code
(1)Test Level
Integration Testing
(2)Test Class
Capability Testing
(3)Test Completion Criteria
The test will be considered complete when:
●The user can use the new code to manipulate the lock.
●The user can no longer use the former code to manipulate the lock.
(4)Test Cases
Table 11: TC-05-01 Edit Code
Test Case Number / TC-05-01 Edit CodeTest Item / This test verifies that 1) an Administrator can change the code of a lock slot assigned to a House Manager or House Staff user; 2) a House Manager can change the code of a lock slot assigned to a House Staff user.
Test Priority / M (Must Have)
Pre-conditions / The tester must be logged into an Administrator level account on our system for the first part and a House Manager account for the second.
Post-conditions / The user should be able to use the new code to manipulate the associated lock. The user should no longer be able to use the former code to manipulate the associated lock.
Input Specifications / New code.
Expected Output Specifications / The system should generate and display a “code successfully updated” message.
Pass/Fail Criteria / Pass Criteria: The user can manipulate the associated lock with the new code. The user cannot manipulate the associated lock with the old code.
Fail Criteria: The user cannot manipulate the associated lock with the new code or the user can still manipulate the associated lock with the old code.
Assumptions and Constraints / Functional Administrator, House Manager, and House Staff accounts exist within the system. At least one lock exists within the system. The House Manager and House Staff accounts each have at least one existing code slot assigned to them.
Dependencies / None
Traceability / WC_4573, WC_4524, WC_4522
f)Test Identifier
TC-06 Delete Code
(1)Test Level
Integration Testing
(2)Test Class
Capability Testing
(3)Test Completion Criteria
The test will be considered complete when:
●The user can no longer use the deleted code to manipulate the lock.
(4)Test Cases
Table 12: TC-06-01 Delete Code
Test Case Number / TC-06-01 Delete CodeTest Item / This test verifies that 1) an Administrator can delete a code slot assigned to a House Manager or House Staff user; 2) a House Manager can delete a code slot assigned to a House Staff user.
Test Priority / M (Must Have)
Pre-conditions / The tester must be logged into an Administrator level account on our system for the first part and a House Manager account for the second.
Post-conditions / The user should no longer be able to use the code from the deleted slot to manipulate the associated lock.
Input Specifications / Code slot to delete.
Expected Output Specifications / The system should generate and display a “code successfully deleted” message.
Pass/Fail Criteria / Pass Criteria: The user cannot manipulate the associated lock with the code from the deleted slot.
Fail Criteria: The user can still manipulate the associated lock with the code from the deleted slot.
Assumptions and Constraints / Functional Administrator, House Manager, and House Staff accounts exist within the system. At least one lock exists within the system. The House Manager and House Staff accounts each have at least one existing code slot assigned to them.
Dependencies / None
Traceability / WC_4573, WC_4524, WC_4522
g)Test Identifier
TC-07 Group Locks