Lab III - Prototype Test Plan/Procedure

Michael Leming

 

Table of Contents

1      Objectives. 1

2      References. 1

3      Test Plan. 2

3.1       Testing Approach. 2

3.2       Identification of Tests. 3

3.3       Test Schedule. 10

3.4       Fault Reporting and Data Recording. 10

3.5       Resource Requirements. 10

3.6       Test Environment 11

4      Test Responsibilities. 11

5      Test Procedures. 12

5.1       Test Case Name and Identifier 12

6      Traceability to Requirements. 19

 

1         Objectives

This document details the methods and procedures for demonstrating the PAS prototype as well as testing its functionality. PAS will be tested and demonstrated by its development staff. The tests will be conducted in order, with sufficient time given to each test case. In the event that any one test or demonstration fails, the rest of the tests will continue as planned unless the failure has effected the whole system. Testing will show PAS functionality to include handling of operator error such as erroneous data entry.

2         References

This document is based in large parts on the PAS prototype description document and the PAS prototype specification document.

3         Test Plan

3.1      Testing Approach

The types of tests performed on the PAS prototype system will vary according to the requirements of the individual functionality. In instances where the testing involves a graphical user interface (GUI) it must be shown that items display properly. GUI screens which accept data input will undergo additional testing for erroneous data entry. GUI screens which display data from the database must be shown to display the proper data. GUI screens which require authentication before proceeding will be tested with and without the proper authentication credentials.

When testing the PAS prototype system where there is no GUI, the GUI will instead be examined to show changes in its display caused by the actions of the other elements of the PAS prototype system. In the event that the GUI should fail at this task, the database itself will be examined from the command line interface to show these changes.

The test data which will initially reside in the system will be artificially created such that the output of any GUI screens or system displays will be specifically predicted. During testing of the system while adding users, garages or decals the data will also be created in advance so that the results of the inputs have a predictable value with which the actual value can be compared. The test data used to show functionality of the PAS car counting components will be provided by a random event generator.

3.2      Identification of Tests

·        Homepage

o       Does this page display correctly?

§         Basic information should be present

§         Navigation menu should be present

§         Login capability should be present

§         Links should work

·        Historical Data Display

o       Does this page display correctly?

§         Navigation menu should be present

§         Login capability should be present

§         Lookup function should be present

§         Graphing function should be present

§         Links should work

·        Current Data Display

o       Does this page display correctly?

§         Navigation menu should be present

§         Login capability should be present

§         Navigation menu should be present

§         Links should work

·        Online Parking Decal Renewal

o       Does this page display correctly?

§         Navigation menu should be present

§         Login capability should be present

§         Links should work

o       Authentication of user

§         Is entered information correctly matched in database?

§         Is erroneous information handled as such?

o       Payment Information

§         Will not be tested. Final product will use third-party payment methods.

o       Renewal information

§         Is entered information input into database correctly?

§         Is erroneous information handled as such?

o       Verification Screen

§         Does the verification screen appear?

§         Does the verification screen present valid data?

·        Administrative Page

o       Does this page display correctly?

§         Navigation menu should be present

§         Parking Area Management links should be present

§         User management links should be present

§         Decal management links should be present

§         Customer management links should be present

o       Does the page restrict its access to valid users?

§         An administrative user, once logged in, sees the page

§         Any user, not logged in, should not see the page

o       Is the aggregate system status displayed?

§         Is the PASD status displayed and correct?

§         Is network connectivity displayed and correct?

§         Is database status displayed and correct?

§         Is remote computer status displayed and correct?

·        Parking Area Management Page

o       Does this page display correctly?

§         Navigation menu should be present

o       Are the proper values able to be selected?

§         All existing garages should be available

§         Garages that do not exist should not be available

o       Adding Parking

§         Are the proper fields displayed?

§         Is the data entered handled correctly?

·        Valid data goes to database

·        Invalid data handled as such

o       Editing Parking

§         Are the proper fields displayed?

§         Are the fields populated with existing data?

§         Is changed data handled correctly?

·        Valid data goes to database

·        Invalid data handled as such

o       Delete Parking

§         Is a confirmation screen displayed?

§         Is the applicable data removed from the database?

·        User Management Page

o       Does this page display correctly?

o       Are the proper values able to be selected?

§         Existing users should be available

§         Users that do not exist should not appear

o       Adding Users

§         Are the proper fields displayed?

§         Is the entered data handled correctly?

·        Valid data goes to database

·        Invalid data handled as such

o       Editing Users

§         Are the proper fields displayed?

§         Are the fields populated with existing data?

§         Is changed data handled correctly?

·        Valid data goes to database

·        Invalid data handled as such

o       Delete User

§         Is a confirmation screen displayed?

§         Is the applicable data removed from the database?

·        Decal Management Page

o       Does this page display correctly?

o       Are the proper values able to be selected?

§         Existing decals should be available

§         Nonexistent decals should not appear

o       Adding Decals

§         Are the proper fields displayed?

§         Is the entered data handled correctly?

·        Valid data goes to database

·        Invalid data handled as such

§         Is there differentiation between decals for existing customers and new ones?

·        New customers should be redirected to add customer page

o       Lookup Decal

§         Are the proper fields displayed?

§         Is the entered data handled correctly?

·        Valid data gets looked up

·        Invalid data handled as such

§         Is the correct decal information returned?

o       Edit Decal

§         Are the proper fields displayed?

·        Are the fields populated with existing data?

§         Is the entered data handled correctly?

·        Valid data goes into database

·        Invalid data handled as such

§         Does the database get updated with new values?

o       Deactivate Decal

§         Are the proper fields displayed?

§         Is the entered data handled correctly?

·        Valid data goes to confirmation screen

·        Invalid data handled as such

§         Does the confirmation screen get displayed?

§         Does the database get updated?

·        Customer Management Page

o       Does this page display correctly?

o       Are the proper values able to be selected?

§         Existing users should be available

§         Users that do not exist should not appear

o       Adding Customer

§         Are the proper fields displayed?

§         Is the entered data handled correctly?

·        Valid data goes to database

·        Invalid data handled as such

o       Lookup Customer

§         Are the proper fields displayed?

§         Is the entered data handled correctly?

·        Valid data goes to database

·        Invalid data handled as such

§         Is the correct customer information displayed?

o       Editing Customer

§         Are the proper fields displayed?

§         Are the fields populated with existing data?

§         Is changed data handled correctly?

·        Valid data goes to database

·        Invalid data handled as such

o       Delete Customer

§         Is a confirmation screen displayed?

§         Is the applicable data removed from the database?

·        Parking Area Display

o       Is the display operable?

·        Lot Computer Logic

o       Is the lot computer logic being followed?

·        Smart Card Scanning

o       Is the card correctly scanned?

·        Remote Client and Database Information Retrieval

o       Does the remote client operate correctly with the database?

·        Car Counter

o       Is the car counter operating correctly?

·        Remote Client and Display Board

o       Is the remote client interfacing with the display board?

 

3.3      Test Schedule

The tests will be conducted the sequence which they are numbered. It is expected that each test take no longer than 30 seconds to complete. Any test that fails will no be repeated in order to remain within the testing time constraints imposed during the prototype demonstration. Failed tests may be repeated at the end by request. Preparation is expected to take approximately 15 minutes. Preparation time includes setting up equipment prior to the demonstration.

3.4      Fault Reporting and Data Recording

Test results will be recorded in the modified traceability matrix in the appendix. Values recorded will be simply “pass” or “fail.”

3.5      Resource Requirements

During the testing of the PAS prototype, it is requested that a member of the ODU CS Systems group be present to quickly resolve any related issues with the CS departmental servers during the testing. The test data required for testing should be pre-loaded into the database two days prior to demonstration. No special equipment will be required outside of what is already present at the testing location. It is assumed that the testing location contains the following: three laptops, network connectivity, one main projected display, two auxiliary LCD television displays. It is also assumed that the ODU CS departmental servers will be running at that time: the MySQL software package, the PHP software package, the APACHE software package. All members of the PAS development team are required to be present.

3.6      Test Environment  

The test environment will be set up as follows. The large projected display will be used together with one of the available laptops for navigating and displaying the Web based GUI screens. The two remaining laptops will both be running the event generation software as well as the PAS remote client software. These two laptops will be connected with the two auxiliary LCD televisions to allow the display of generated events and server interaction as well as the simulated parking area display boards. A smart card reader will be attached to one of these two laptops to enable a demonstration of the technology involved as well as the interfacing of the database with that technology.

4         Test Responsibilities

The PAS development team will share responsibilities for the various testing roles. One member of the team will sit at the first laptop and drive the GUI screens. A member of the team will be designated as responsible for each of the two remaining laptops. They will be in charge of running the applicable software as well as demonstrating the smart card reader interface. A fourth team member will be responsible for general speaking duties.

 

5         Test Procedures

5.1      Test Case Name and Identifier

1              Homepage

1.1        Does this page display correctly?

1.1.1        Basic information should be present

1.1.2        Navigation menu should be present

1.1.3        Login capability should be present

1.1.4        Links should work

2              Historical Data Display

2.1        Does this page display correctly?

2.1.1        Navigation menu should be present

2.1.2        Login capability should be present

2.1.3        Lookup function should be present

2.1.4        Graphing function should be present

2.1.5        Links should work

3              Current Data Display

3.1        Does this page display correctly?

3.1.1        Navigation menu should be present

3.1.2        Login capability should be present

3.1.3        Navigation menu should be present

3.1.4        Links should work

4              Online Parking Decal Renewal

4.1        Does this page display correctly?

4.1.1        Navigation menu should be present

4.1.2        Login capability should be present

4.1.3        Links should work

4.2        Authentication of user

4.2.1        Is entered information correctly matched in database?

4.2.2        Is erroneous information handled as such?

4.3        Payment Information

4.3.1        Will not be tested. Final product will use third-party payment methods.

4.4        Renewal information

4.4.1        Is entered information input into database correctly?

4.4.2        Is erroneous information handled as such?

4.5        Verification Screen

4.5.1        Does the verification screen appear?

4.5.2        Does the verification screen present valid data?

5              Administrative Page

5.1        Does this page display correctly?

5.1.1        Navigation menu should be present

5.1.2        Parking Area Management links should be present

5.1.3        User management links should be present

5.1.4        Decal management links should be present

5.1.5        Customer management links should be present

5.2        Does the page restrict its access to valid users?

5.2.1        An administrative user, once logged in, sees the page

5.2.2        Any user, not logged in, should not see the page

5.3        Is the aggregate system status displayed?

5.3.1        Is the PASD status displayed and correct?

5.3.2        Is network connectivity displayed and correct?

5.3.3        Is database status displayed and correct?

5.3.4        Is remote computer status displayed and correct?

6              Parking Area Management Page

6.1        Does this page display correctly?

6.1.1        Navigation menu should be present

6.2        Are the proper values able to be selected?

6.2.1        All existing garages should be available

6.2.2        Garages that do not exist should not be available

6.3        Adding Parking

6.3.1        Are the proper fields displayed?

6.3.2        Is the data entered handled correctly?

6.3.2.1  Valid data goes to database

6.3.2.2  Invalid data handled as such

6.4        Editing Parking

6.4.1        Are the proper fields displayed?

6.4.2        Are the fields populated with existing data?

6.4.3        Is changed data handled correctly?

6.4.3.1  Valid data goes to database

6.4.3.2  Invalid data handled as such

6.5        Delete Parking

6.5.1        Is a confirmation screen displayed?

6.5.2        Is the applicable data removed from the database?

7              User Management Page

7.1        Does this page display correctly?

7.2        Are the proper values able to be selected?

7.2.1        Existing users should be available

7.2.2        Users that do not exist should not appear

7.3        Adding Users

7.3.1        Are the proper fields displayed?

7.3.2        Is the entered data handled correctly?

7.3.2.1  Valid data goes to database

7.3.2.2  Invalid data handled as such

7.4        Editing Users

7.4.1        Are the proper fields displayed?

7.4.2        Are the fields populated with existing data?

7.4.3        Is changed data handled correctly?

7.4.3.1  Valid data goes to database

7.4.3.2  Invalid data handled as such

7.5        Delete User

7.5.1        Is a confirmation screen displayed?

7.5.2        Is the applicable data removed from the database?

8              Decal Management Page

8.1        Does this page display correctly?

8.2        Are the proper values able to be selected?

8.2.1        Existing decals should be available

8.2.2        Nonexistent decals should not appear

8.3        Adding Decals

8.3.1        Are the proper fields displayed?

8.3.2        Is the entered data handled correctly?

8.3.2.1  Valid data goes to database

8.3.2.2  Invalid data handled as such

8.3.3        Is there differentiation between decals for existing customers and new ones?

8.3.3.1  New customers should be redirected to add customer page

8.4        Lookup Decal

8.4.1        Are the proper fields displayed?

8.4.2        Is the entered data handled correctly?

8.4.2.1  Valid data gets looked up

8.4.2.2  Invalid data handled as such

8.4.3        Is the correct decal information returned?

8.5        Edit Decal

8.5.1        Are the proper fields displayed?

8.5.1.1  Are the fields populated with existing data?

8.5.2        Is the entered data handled correctly?

8.5.2.1  Valid data goes into database

8.5.2.2  Invalid data handled as such

8.5.3        Does the database get updated with new values?

8.6        Deactivate Decal

8.6.1        Are the proper fields displayed?

8.6.2        Is the entered data handled correctly?

8.6.2.1  Valid data goes to confirmation screen

8.6.2.2  Invalid data handled as such

8.6.3        Does the confirmation screen get displayed?

8.6.4        Does the database get updated?

9              Customer Management Page

9.1        Does this page display correctly?

9.2        Are the proper values able to be selected?

9.2.1        Existing users should be available

9.2.2        Users that do not exist should not appear

9.3        Adding Customer

9.3.1        Are the proper fields displayed?

9.3.2        Is the entered data handled correctly?

9.3.2.1  Valid data goes to database

9.3.2.2  Invalid data handled as such

9.4        Lookup Customer

9.4.1        Are the proper fields displayed?

9.4.2        Is the entered data handled correctly?

9.4.2.1  Valid data goes to database

9.4.2.2  Invalid data handled as such

9.4.3        Is the correct customer information displayed?

9.5        Editing Customer

9.5.1        Are the proper fields displayed?

9.5.2        Are the fields populated with existing data?

9.5.3        Is changed data handled correctly?

9.5.3.1  Valid data goes to database

9.5.3.2  Invalid data handled as such

9.6        Delete Customer

9.6.1        Is a confirmation screen displayed?

9.6.2        Is the applicable data removed from the database?

10          Parking Area Display

10.1    Is the display operable?

11          Lot Computer Logic

11.1    Is the lot computer logic being followed?

12          Smart Card Scanning

12.1    Is the card correctly scanned?

13          Remote Client and Database Information Retrieval

13.1    Does the remote client operate correctly with the database?

14          Car Counter

14.1    Is the car counter operating correctly?

15          Remote Client and Display Board

15.1    Is the remote client interfacing with the display board?

6         Traceability to Requirements

Requirement

Test Case

1.1 Homepage

1.1

1.1.1        Display Basic Information

1.1.1

1.1.2        Navigation Menu

1.1.2,1.1.4

1.1.3 Login Capability

1.1.3

1.2 Historical data display

2

1.2.1 Navigation Menu

2.1.1,2.1.5

1.2.2 Login capability

2.1.2

1.2.3 Lookup function

2.1.3

1.2.4 Graphing function

2.1.4

1.3 Current Data Display

3,3.1,3.1.1,3.1.2,3.1.3,3.1.4

1.4 Online parking decal renewal

4,4.1,4.1.1,4.1.2,4.1.3

1.4.1 Authentication of user

4.2,4.2.1,4.2.2

1.4.2 Payment information

4.3,4.3.1

1.4.3 Renewal information

4.4,4.4.1,4.4.2

1.4.4 Verification screen

4.5,4.5.1,4.5.2

1.5 Administrative Page

5,5.1.2,5.1.3,5.1.4,5.1.5,5.2,5.2.1,5.2.2

1.5.1 Navigation menu

5.1.1

1.5.1.1 Parking area management

5.1.1

1.5.1.2 User management

5.1.1

1.5.1.3 Decal management

5.1.1

1.5.1.4 Customer management

5.1.1

1.5.2 System status display

5.3

1.5.2.1 Display PASD status

5.3.1

1.5.2.2 Display network connectivity status

5.3.2

1.5.2.3 Display database status

5.3.3

1.5.2.4 Display remote computer status

5.3.4

1.6 Parking area management page

6,6.1,6.1.1

1.6.1 Selection

6.2,6.2.1,6.2.2

1.6.2 Add parking

6.3.1,6.3.2,6.3.2.1,6.3.2.2

1.6.3 Edit parking

6.4,6.4.1,6.4.2,6.4.3,6.4.3.1,6.4.3.2

1.6.4 Delete parking

6.5,6.5.1,6.5.2

1.7 User management page

7,7.1

1.7.1 Selection

7.2,7.2.1,7.2.2

1.7.2 Add user

7.3,7.3.1,7.3.2,7.3.2.1,7.3.2.2

1.7.3 Edit user

7.4,7.4.1,7.4.2,7.4.3,7.4.3.1,7.4.3.2

1.7.4 Delete user

7.5,7.5.1,7.5.2

1.8 Decal management page

8,8.1

1.8.1 Selection

8.2,8.2.1,8.2.2

1.8.2 Add decal

8.3,8.3.1,8.3.2,8.3.2.1,8.3.2.2,8.3.3,8.3.3.1

1.8.2.1 Current customer

8.3.3,8.3.3.1

1.8.2.2 New customer

8.3.3,8.3.3.1

1.8.3 Lookup decal

8.4,8.4.1,8.4.2,8.4.2.1,8.4.2.2,8.4.3

1.8.4 Edit decal

8.5,8.5.1,8.5.1.1,8.5.2,8.5.2.1,8.5.2.2,8.5.3

1.8.5 Deactivate decal

8.6,8.6.1,8.6.2,8.6.2.1,8.6.2.2,8.6.3,8.6.4

1.9 Customer management page

9,9.1

1.9.1 Selection

9.2,9.2.1,9.2.2

1.9.2 Add customer

9.3,9.3.1,9.3.2,9.3.2.1,9.3.2.2

1.9.3 Lookup customer

9.4,9.4.1,9.4.2,9.4.2.1,9.4.2.2,9.4.3

1.9.4 Edit customer

9.5,9.5.1,9.5.2,9.5.3,9.5.3.1,9.5.3.2

1.9.5 Delete customer

9.6,9.6.1,9.6.2

1.10 Parking area display

10,10.1

1.11 Lot computer logic

11,11.1

1.12 Smart card scanning

12,12.1

1.12.1 Send code to remote computer

 

1.12.2 Remote computer controls scanning

 

1.12.2.1 Enabled

 

1.12.2.2 Disabled

 

1.13 Remote client and database information retrieval

13,13.1

1.13.1 Send code to a database

 

1.13.1.1 Remote computer connects to main server

 

1.13.2 Return result remains at main server

 

1.13.2.1 Remote machine checks

 

1.13.2.1.1 Pass

 

1.13.2.1.2 Failure

 

1.14 Car Counter

14,14.1

1.14.1 Communicates with smart card reader

 

1.14.1.1 Remote client computer

 

1.14.2 Dynamic number generation

 

1.14.2.1 Decrement count after dynamically generated time expires

 

1.15 Remote client and display board

15,15.1

1.15.1 Dynamic updates sent to display

 

1.15.1.1 Shows current capacity

 

 

 

 

 

 

 

 

 

 

 

 

PASS/FAIL Matrix

 

Requirement

Test Case

PASS/FAIL

1.1 Homepage

1.1

 

1.1.3        Display Basic Information

1.1.1

 

1.1.4        Navigation Menu

1.1.2,1.1.4

 

1.1.3 Login Capability

1.1.3

 

1.2 Historical data display

2

 

1.2.1 Navigation Menu

2.1.1,2.1.5

 

1.2.2 Login capability

2.1.2

 

1.2.3 Lookup function

2.1.3

 

1.2.4 Graphing function

2.1.4

 

1.3 Current Data Display

3,3.1,3.1.1,3.1.2,3.1.3,3.1.4

 

1.4 Online parking decal renewal

4,4.1,4.1.1,4.1.2,4.1.3

 

1.4.1 Authentication of user

4.2,4.2.1,4.2.2

 

1.4.2 Payment information

4.3,4.3.1

 

1.4.3 Renewal information

4.4,4.4.1,4.4.2

 

1.4.4 Verification screen

4.5,4.5.1,4.5.2

 

1.5 Administrative Page

5,5.1.2,5.1.3,5.1.4,5.1.5,5.2,5.2.1,5.2.2

 

1.5.1 Navigation menu

5.1.1

 

1.5.1.1 Parking area management

5.1.1

 

1.5.1.2 User management

5.1.1

 

1.5.1.3 Decal management

5.1.1

 

1.5.1.4 Customer management

5.1.1

 

1.5.2 System status display

5.3

 

1.5.2.1 Display PASD status

5.3.1

 

1.5.2.2 Display network connectivity status

5.3.2

 

1.5.2.3 Display database status

5.3.3

 

1.5.2.4 Display remote computer status

5.3.4

 

1.6 Parking area management page

6,6.1,6.1.1

 

1.6.1 Selection

6.2,6.2.1,6.2.2

 

1.6.2 Add parking

6.3.1,6.3.2,6.3.2.1,6.3.2.2

 

1.6.3 Edit parking

6.4,6.4.1,6.4.2,6.4.3,6.4.3.1,6.4.3.2

 

1.6.4 Delete parking

6.5,6.5.1,6.5.2

 

1.7 User management page

7,7.1

 

1.7.1 Selection

7.2,7.2.1,7.2.2

 

1.7.2 Add user

7.3,7.3.1,7.3.2,7.3.2.1,7.3.2.2

 

1.7.3 Edit user

7.4,7.4.1,7.4.2,7.4.3,7.4.3.1,7.4.3.2

 

1.7.4 Delete user

7.5,7.5.1,7.5.2

 

1.8 Decal management page

8,8.1

 

1.8.1 Selection

8.2,8.2.1,8.2.2

 

1.8.2 Add decal

8.3,8.3.1,8.3.2,8.3.2.1,8.3.2.2,8.3.3,8.3.3.1

 

1.8.2.1 Current customer

8.3.3,8.3.3.1

 

1.8.2.2 New customer

8.3.3,8.3.3.1

 

1.8.3 Lookup decal

8.4,8.4.1,8.4.2,8.4.2.1,8.4.2.2,8.4.3

 

1.8.4 Edit decal

8.5,8.5.1,8.5.1.1,8.5.2,8.5.2.1,8.5.2.2,8.5.3

 

1.8.5 Deactivate decal

8.6,8.6.1,8.6.2,8.6.2.1,8.6.2.2,8.6.3,8.6.4

 

1.9 Customer management page

9,9.1

 

1.9.1 Selection

9.2,9.2.1,9.2.2

 

1.9.2 Add customer

9.3,9.3.1,9.3.2,9.3.2.1,9.3.2.2

 

1.9.3 Lookup customer

9.4,9.4.1,9.4.2,9.4.2.1,9.4.2.2,9.4.3

 

1.9.4 Edit customer

9.5,9.5.1,9.5.2,9.5.3,9.5.3.1,9.5.3.2

 

1.9.5 Delete customer

9.6,9.6.1,9.6.2

 

1.10 Parking area display

10,10.1

 

1.11 Lot computer logic

11,11.1

 

1.12 Smart card scanning

12,12.1

 

1.12.1 Send code to remote computer

 

 

1.12.2 Remote computer controls scanning

 

 

1.12.2.1 Enabled

 

 

1.12.2.2 Disabled

 

 

1.13 Remote client and database information retrieval

13,13.1

 

1.13.1 Send code to a database

 

 

1.13.1.1 Remote computer connects to main server

 

 

1.13.2 Return result remains at main server

 

 

1.13.2.1 Remote machine checks

 

 

1.13.2.1.1 Pass

 

 

1.13.2.1.2 Failure

 

 

1.14 Car Counter

14,14.1

 

1.14.1 Communicates with smart card reader

 

 

1.14.1.1 Remote client computer

 

 

1.14.2 Dynamic number generation

 

 

1.14.2.1 Decrement count after dynamically generated time expires

 

 

1.15 Remote client and display board

15,15.1

 

1.15.1 Dynamic updates sent to display

 

 

1.15.1.1 Shows current capacity