Integration Test Plan Terminus Security Prepared by: Kai Chan Stephen Krenzel John O Meara Version: 1.0 1
Contents 1 Introduction 3 1.1 Purpose.................................. 3 1.2 Scope................................... 3 2 Test Layout 4 2.1 Identifiers................................. 4 2.2 Case Structure.............................. 4 3 Tests 5 3.1 Power Control.............................. 5 3.2 Door Lock................................ 7 3.3 Video Capture.............................. 11 3.4 Temperature and Motion........................ 15 3.5 Token Authentication.......................... 24 3.6 System Logging.............................. 27 3.7 Multiple Devices............................. 28 3.8 Maintainability.............................. 30 3.9 Reliability................................. 31 3.10 Security.................................. 32 3.11 Web Interface............................... 34 4 References 38 2
1 Introduction 1.1 Purpose This document details the test scenarios required for the integration tests. These scenarios will check the communications between system components, the ability to effectively read sensors, and the web interface as defined by the requirements document. 1.2 Scope These tests will cover unit and integration tests, which are automated, as well as manual tests that ensure the Terminus system components are perform properly together as defined by the requirements document. These tests are primarily based on the scenarios defined by requirements use cases. Interactions between system components should conform to the design specified in the architecture document. These do not represent individual tests to perform, but rather should be considered templates to guide in the creation of individual test cases and unit tests. These represent an effort to point out classes with equivolent functionality, without necessarily covering every potential class. 3
2 Test Layout 2.1 Identifiers Identifiers will be specified as follows:: <A M>.Major.Minor.Sub <A M>: The letter A will be used for automated tests. The letter M will be used for manual tests. Major: Subsection number from the Use Cases section of the SRD 1 Minor: Sub: SubSubsection number from the Use Cases section of the SRD Test number for the use case For example, removing a power controller is covered by section 4.1.2 of the SRD. To test physically adding a power controller would be a manual test. Thus, the first test to perform on this would be labeled M.1.2.1. Major numbers greater than 50 will be used for test cases which do not have an associated use case, as the use cases currently end at 12, and the remaining gap should leave ample room for modification of the SRD. 2.2 Case Structure Each test case will consist of an identifier, a, a list of, an ordered procedure, and a list of which indicate successful completion. Tests will specify if the individual test requires that any or all of the be met to be considered a success. To facilitate advanced tests, it is allowed to nest any and all sections, however this nesting should be considered a last resort of specification, as it reduces readability. 4
3 Tests 3.1 Power Control 3.1.1 Add New Controller M.1.1.1 Add New Controller Controller is not installed 1. Connect controller to base server 2. Log onto web interface 3. Select controller 4. Click Install Message displays confirming successful installation of controller. 3.1.2 Remove Controller M.1.2.1 Remove Controller Controller is installed 2. Select controller 3. Click Uninstall Message displays confirming successful removal of controller. 5
3.1.3 Unreachable Controller A.1.3.1 Unreachable Controller Controller is installed Controller is unplugged 2. Select controller After login, controller is grayed out because it is not connected. 3.1.4 Scheduled Events M.1.4.1 Scheduled Lighting X10 system installed 2. Select Lighting 3. Click Schedule 4. Assign one group of lights to be on for an interval and sensitive to motion 5. Set shut-off time to 5 minutes Lights turn on and remain on for duration specified. Lights turn on when motion is detected. Lights turn off after shut-off has passed when not in ON duration. 6
M.1.4.2 Scheduled Locks Door strike installed Door is closed 2. Select door strike 3. User sets times for door to lock Door locks at specified time. 3.2 Door Lock 3.2.1 Lock/Unlock on Signal M.2.1.1 Lock/Unlock Upon Signal Door strike is installed Door strike is engaged 2. Select lock 3. Click Unlock The lock unlocks. The web interface updates to show lock status. 7
3.2.2 Forced Entry M.2.2.1 Forced Entry I Reed switch is installed Door strike is installed Door strike is engaged System is in armed status 1. Reed switch is triggered while lock remains locked User is notified of entry. Web interface displays alert. M.2.2.2 Forced Entry II System is in armed status Shock sensor installed on door Siren is installed 1. Kick door Shock sensor signals alert. Siren activated by alerts. 8
M.2.2.3 Forced Entry III System is in armed status Reed switch installed on door Siren is installed 1. Open door Reed switch signals alert when door opens. Siren activated by alert. M.2.2.4 Forced Entry IV System is in armed status Glass break sensor installed on window Siren is installed 1. Break window Sensor signals alert when glass breaks. Siren activated by alert. 9
3.2.3 General Security M.2.3.1 General Security I Motion Sensors are installed in test environment 1. Walk through test environment 2. Sensors are set off System notifies user of threats. Web interface displays alerts. M.2.3.2 General Security II Door strike installed Magnetic lock installed UPS installed 1. Unplug server from power Magnetic strike disengages. Door strike engages. System switches to UPS. System issues alert that power is lost. 10
M.2.3.3 General Security III Door strike is installed Doors set to automatically lock after 5 minutes 2. Select door 3. Click Unlock Door strike disengages. Door strike engages after 5 minutes pass. 3.3 Video Capture 3.3.1 Add New Camera M.3.1.1 Add New Camera System has capture card 1. Connect camera to card 2. Log onto web interface 3. Select camera 4. Click Install Message displays confirming successful installation of camera. 11
3.3.2 Remove Camera A.3.2.1 Remove Camera Camera is installed 2. Select installed camera 3. Click Uninstall Message displays confirming successful removal of camera. 3.3.3 Disable Camera A.3.3.1 Disable Camera Camera is installed and enabled 2. Select camera 3. Click Disable Message displays confirming camera is disabled. Camera appears grayed out in web interface. 12
3.3.4 Low Battery M.3.4.1 Low Signal Alert (Maintenance) Web interface displays Weak Signal notification. Web interface shows current status of device is normal. A.3.4.2 Low Battery Alert (Maintenance) Wireless device is installed 1. Allow wireless device to run until battery drains 2. Log onto web interface Web interface displays Low Battery notification. Web interface displays battery status of device. 13
3.3.5 Unavailable Controller M.3.5.1 Controller Becomes Unavailable Controller is installed 1. Unplug controller 2. Log onto web interface Web interface grays out controller because it is unavailable. Web interface displays notification that controller has become unavailable. 3.3.6 Motion Detection (Camera) M.3.6.1 Motion Detection (With Camera Recording) Camera is installed and enabled 1. Walk in front of camera 2. Log onto web interface User is notified of motion detected. Web interface displays alert. 14
3.3.7 Infrared Image Capture M.3.7.1 Infrared Low Light Image Capture Camera is installed and enabled Test area is unlit 1. Walk in front of camera 2. Log onto web interface 3. Browse to camera images Captured images shows person when viewed. 3.4 Temperature and Motion 3.4.1 Add Sensor M.4.1.1 Add New Sensor Sensor is not installed 1. Plug in sensor to base server 2. Log onto web interface 3. Select sensor 4. Name sensor 5. Click Install Any: Message appears showing system has detected sensor after login. Message appears confirming successful installation of sensor after clicking Install. 15
3.4.2 Enable Sensor A.4.2.1 Enable a Sensor Sensor is installed Sensor is disabled 2. Select sensor 3. Click Enable Any: Message appears confirming successful sensor activation. 3.4.3 Disable Sensor A.4.3.1 Disable a Sensor Sensor is installed Sensor is enabled 2. Select sensor 3. Click Enable Any: Message appears confirming successful sensor deactivation. 16
3.4.4 Query Sensor A.4.4.1 Query a Sensor Sensor is successfully installed Sensor is currently enabled 2. Select sensor 3. Click Poll Any: Message displays current reading from sensor. A.4.5.1 Remove a Sensor Sensor installed 2. Select sensor 3. Click Remove 4. Click Yes Message appears asking for confirmation after clicking Remove. Sensor is no longer visible in list after clicking Yes. 17
M.4.6.1 Add New Unknown Sensor I Sensor not installed 1. Connect sensor to system 2. Log onto web interface 3. Select new sensor 4. Click Redetect Message appears in web interface showing new sensor was detected. Message appears that sensor is unknown. Message appears asking user to: 1) Redetect, 2) Advanced Settings, 3) Update Software. Any: System recognizes sensor type. System fails to recognize sensor type. 18
M.4.6.2 Add New Unknown Sensor II Sensor not installed 1. Connect sensor to system 2. Log onto web interface 3. Select new sensor 4. Click Advanced Settings 5. Input settings manually 6. Click Save Message appears in web interface showing new sensor was detected. Message appears that sensor is unknown. Any: System recognizes sensor type. System fails to recognize sensor type. 19
M.4.6.3 Add New Unknown Sensor III Sensor not installed 1. Connect sensor to system 2. Log onto web interface 3. Select new sensor 4. Click Software Update Message appears in web interface showing new sensor was detected. Message appears that sensor is of unknown type. Any: System recognizes sensor type. System fails to recognize sensor type. 20
M.4.7.1 Unavailable Sensor Installed sensor unplugged 2. Select sensor 3. Click Disable 4. Click Enable 5. Plug in sensor Message appears showing system failed to contact sensor. System stops monitoring sensor after disable. System monitors sensor after enable. Sensor reestablishes contact with sensor after reconnection. 21
M.5.1.1 Notify Users of Power Outage System is powered through main power System is attached to UPS 1. Disconnect system from main power 2. Log onto web interface When disconnected, the UPS becomes active and powers the system. After logging in, an alert warns that system has switched to UPS power. procedures A.5.2.1 Notify Users of Important Events System is powered by UPS UPS has reached low value threshold 1. <none> System issues low power alert. System sends message to user. 22
procedures A.5.2.2 Notify Users of Important Events System is powered by UPS UPS has reached critical value threshold 1. <none> System issues critical power alert. System sends message to user. System shuts down. A.5.3.1 Configure Shutdown Times UPS is installed 1. Log onto interface 2. Select UPS 3. Click Configure 4. Input 15% and 25% for low power threshold 5. Input 0% to 10% for critical power threshold 6. Click Save Message appears confirming settings are saved. 23
M.5.4.1 UPS Unavailable Due To Maintenance Issue/Faulty Device(s) UPS is installed 1. Disconnect UPS User is notified. Web interface displays alert. 3.5 Token Authentication M.6.1.1 Add New Token Reader <none> 1. Connect token reader to base server 2. Log onto web interface 3. Select token reader 4. Click Install Message confirms successful installation of token reader. 24
preconditions M.6.2.1 Authenticate Users Token reader installed User has registered token 1. User places token in token reader Any: System accepts user as authenticated. 3.5.1 Add New User A.6.3.1 Add New User to the System Fresh Setup 2. Browse to user management 3. Add user System adds user. 3.5.2 Token Communication Error M.6.4.1 Token Communication Error User has token with corrupt SHA-1 fingerprint 1. User attempts to authenticate with corrupt token System successfully fails. 25
3.5.3 Remove Token A.6.5.1 Remove Token Token is registered with the system 2. Browse to registered tokens 3. Remove token System unregisters token. Web interface notifies user of success. 3.5.4 Invalidate Token A.6.6.1 Invalidate Token A valid token is registered with the system 1. Log onto system 2. Select valid token 3. Select Invalidate System doesn t disarm when token is present. System raises alert when token is present. 26
3.6 System Logging 3.6.1 Event Logging M.7.1.1 Event Logging Smoke detector is connected to the system Temperature sensor is connected to the system System thermostat temperature is set 1. Get a bottle of 100 proof alcohol or higher 2. Stick a piece of cloth into bottle 3. Place bottle under smoke detector, and near the temperature sensor 4. Ignite the cloth wick Message received by user alerting of smoke detector being set off. Message received by user alerting that the temperature increased. 3.6.2 Event Types A.7.2.1 Event Types none Login appears in logs. 27
3.6.3 Configuration Options A.7.3.1 Configuration Options <none> 1. Set archive preferences as per sentence one of section 4.7.3 of the SRD 1 2. Set clock to 2:59am 3. Sleep for a few minutes Data is stored on remote server. Data is cleared from the system. 3.7 Multiple Devices 3.7.1 Unauthorized Entry M.8.1.1 Unauthorized Entry Recorded System is armed Door is unlocked Door sensor is installed Video camera is installed and facing door 1. Open door System goes into alarm state. Video camera records image of person opening the door. User receives an alert message. 28
3.7.2 Home Automation M.8.2.1 Home Automation - entry System is configured to turn on a light and unlock a door when disarmed. System is armed A valid token is registered 1. Apply valid token System is in disarmed state. Foyer light is on. Door lock is disengaged. M.8.2.2 Home Automation - user assistance System is configured to associate motion events with light control System is disarmed 1. Walk throughout the house Lights are on in occupied rooms. Lights are off in unoccupied rooms. 29
3.8 Maintainability 3.8.1 Software Updates A.9.1.1 Software Updates Software updates available System is not up to date 1. Log onto interface 2. Select updates 3. Select install Confirmation message appears. System version number increases. 30
3.9 Reliability 3.9.1 Power and Network M.10.1.1 Power and Network Reliability A door sensor is connected to and monitored by the system UPS subsystem is installed and monitored Network connection exists Alerts are configured System is armed 1. Disconnect network 2. Disconnect power source from UPS 3. Open door Alarm sounds. Any: Alerts are queued to be sent. Alerts are sent through an alternative connection. 31
3.10 Security 3.10.1 Access and Permissions A.11.1.1 Create a user none 1. Log onto system 2. Select account management 3. Create a user 4. Set limited permissions 5. Log off 6. Log in as new user 7. Check available commands Each set permitted action is available. Each unset permitted action is not available. 32
A.11.1.2 Check messaging none 1. Log onto system 2. Select account management 3. Create a user 4. Set notifications to alert a location which can be monitored 5. Log off 6. Log in as new user 7. Execute a few actions 8. Delay and check for alerts Each action performed has resulted in an alert generated. 33
M.11.1.3 Check messaging to phone none 1. Log onto system 2. Select account management 3. Create a user 4. Set notifications to alert tester s phone 5. Log off 6. Log in as new user 7. Execute a few actions Each action performed has resulted in an alert generated and received on the tester s phone. 3.11 Web Interface 3.11.1 Sorting Images A.12.1.1 Default sorting At least two images are stored 2. Navigate to stored images 3. Read ordering of images Images are listed in order by date (newest to oldest). 34
A.12.1.2 Reverse sorting At least two images are stored 2. Navigate to stored images 3. Select the date column heading 4. Read ordering of images Images are listed in order by date (oldest to newest). A.12.1.3 Camera sorting At least two images are stored 2. Navigate to stored images 3. Select the camera column heading 4. Read ordering of images Images are listed in order by camera (newest to oldest). 35
3.11.2 Image Deletion A.12.2.1 Deleting Image (first) At least one image is stored 2. Navigate to stored images 3. Select the first listed image 4. Select Delete Image is no longer listed. A.12.2.2 Deleting Image (last) At least one image is stored 2. Navigate to stored images 3. Select last listed image 4. Select Delete Image is no longer listed. 36
A.12.2.3 Deleting Images At least two images are stored 2. Navigate to stored images 3. Select two images 4. Select Delete Images are no longer listed. 37
4 References 1 (1, 2) Terminus Security - Sofware Requirements Document 38