NATIONAL STUDENT INDEX REST Interface Test Scripts Version 0.2 – August 2015 Table of Contents Table of Contents ....................................................................................................... 2 1 Document Information ......................................................................................... 3 1.1 Version Control............................................................................................... 3 1.2 Related Documentation .................................................................................. 3 2 Introduction .......................................................................................................... 4 2.1 Purpose of REST Interface Testing ................................................................ 4 2.2 Intended Audience ......................................................................................... 4 2.3 Overview of REST Interface Tests ................................................................. 4 2.4 Tips for Testers .............................................................................................. 4 3 Search Test Scripts ............................................................................................. 5 3.1 SEARCH – NSN ............................................................................................. 5 3.2 SEARCH – Name and Birth Date ................................................................... 6 3.3 SEARCH – Name Only................................................................................... 7 3.4 SEARCH – Alternative Name ......................................................................... 8 4 Add Record Test Scripts ...................................................................................... 9 4.1 ADD – Unverified record – Record A .............................................................. 9 4.2 ADD – Unverified record with alternative name – Record B ......................... 11 4.3 ADD – Verified record – Record C ............................................................... 13 4.4 ADD – Verified record – Possible match – Record D ................................... 15 4.5 ADD – Verified record – Definite match ........................................................ 17 5 Update Record Test Scripts............................................................................... 18 5.1 UPDATE – Name ......................................................................................... 18 5.2 UPDATE – Verification information .............................................................. 19 5.3 UPDATE – Unsuccessful update attempt ..................................................... 20 6 Merge Record Test Scripts ................................................................................ 21 6.1 MERGE – No manual intervention required ................................................. 21 6.2 MERGE – Manual intervention required ....................................................... 22 7 Create/Update Student-Provider Relationships ................................................. 23 7.1 STUDENT-PROVIDER RELATIONSHIP – Add Relationship ...................... 23 7.2 STUDENT-PROVIDER RELATIONSHIP – Update existing Relationship .... 24 NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 2 of 24 1 Document Information 1.1 Version Control Name Date Version Comments Jonathan Semu 29/05/2015 0.1 Newly developed SMS certification scripts to ensure SMS is thoroughly tested. Jonathan Semu 23/07/2015 0.2 Rename document to NSI REST Interface Test Scripts Update scripts to be generic for REST Interface testing Version Status 1.2 Related Documentation Document title GINS NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 3 of 24 2 Introduction 2.1 Purpose of REST Interface Testing The purpose of the REST Interface testing described in this document is to formally test that the implemented programmatic interface between a provider’s student management system (SMS) and the National Student Index (NSI) functions correctly. It is expected that before this testing takes place the provider will have completed their own testing to ensure that the implemented interface works in the way that is required by their own organisation. The REST Interface testing is intended to provide the SMS vendor, provider and the Ministry of Education with the confidence that the implemented NSI REST interface allows data to be successfully transferred without causing either system to malfunction before the provider commences their use of the live NSI system. 2.2 Intended Audience This document is intended for staff carrying out REST Interface testing as part of a SMS Vendor, or a provider organisation or Ministry of Education staff. 2.3 Overview of REST Interface Tests The REST Interface tests cover all of the areas of NSI functionality that you are able to access via the REST interface. The tests are divided into each of the following main areas: searching for an existing NSI record; creating a new record; updating an existing record; merging two or more NSI records; creating/updating a Student-Provider relationship There are test scripts that relate to each of these main areas. These scripts are essentially checklists that detail precisely what is being tested and in what sequence. 2.4 Tips for Testers Testing will be most successful if you ensure that: You enter the exact data in the test script. If all of the data cannot be entered, or alternate data is entered, you should provide an explanation on the template. You execute the tests in order because the test scripts have been designed to be carried out sequentially, for example the record you create in 4.1 is subsequently updated in 5.1. You keep a full record of any errors or issues that arise – e.g. take a screen shot of any errors. NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 4 of 24 3 Search Test Scripts These tests are intended to ensure that the provider can use their NSI REST interface to locate existing NSI records. SEARCH – NSN Provider is enrolling a new student who has given the provider their National Student Index number (NSN). Provider enrols student and searches for an existing NSI record as part of this process. 3.1 Record details are returned from NSI. If all details are correct then the provider uses the existing NSI record. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Perform Search for student Student NSN: NSN 100236560 Expected Output Actual Output Search executes successfully. One NSI record is returned that relates to the NSN entered by the provider. Record was created by NZQA and should have date of birth 14-08-1941 Pera Jones, 14/08/1941 Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 5 of 24 Pass? (Y/N) 3.2 SEARCH – Name and Birth Date Provider is enrolling a new student who has not given the provider an NSN. Provider enrols student and searches for an existing NSI record as part of this process. Record details are returned from NSI. If an NSN exists and all details are correct then the provider uses the existing NSI record. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Perform Search for student Student Name: Name: Warner Jeffrey Roberts Birth date: 03 Jul 1980 Expected Output Actual Output Search executes successfully. NSI record 114931355 is returned. Other NSI records may also be returned Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 6 of 24 Pass? (Y/N) 3.3 SEARCH – Name Only Provider is enrolling a new student who has not given the provider their NSN. Provider enrols student and searches for an existing NSI record as part of this process. Record details are returned from NSI. If an NSN exists and all details are correct then the provider uses the existing NSI record. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Perform Search for student Student Name: Name: Richard Williamson Expected output Actual output Search executes successfully. NSI record 2890789 is returned. Other NSI records may also be returned. The returned data (search matches) will include at least student name, date of birth, and the NSI record status. Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 7 of 24 Pass? (Y/N) 3.4 SEARCH – Alternative Name Provider is enrolling a new student who has not given the provider their NSN. Provider enrols student and searches for an existing NSI record as part of this process. Record details are returned from NSI. If an NSN exists and all details are correct then the provider uses the existing NSI record. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Perform Search for student Student Name: Name: Alex Carter Birth date: 11/02/1982 Expected output Actual output Search executes successfully. A match is found on student’s alternative name (match indicator = 2) and NSI record 104399019 (main name is ‘Alexandra Carter’) is returned. Other NSI records may also be returned. The search results will include at least student name, date of birth, and the NSI record status. Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 8 of 24 Pass? (Y/N) 4 Add Record Test Scripts These tests are intended to ensure that the provider can use their NSI REST interface to create new NSI records. In completing these tests you will be creating four new NSI records which are referred to in the following scripts as records A, B, C and D. As you will use these records again in later tests it is important that you keep a note of the NSNs that you create for each of these new records. 4.1 ADD – Unverified record – Record A Provider is enrolling a new student who has not given an NSN. Provider enrols student and searches for an existing NSI record as part of this process. No record can be found on the NSI and the provider creates a new record. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Perform Search for student Details to enter: Family name: Street name where your provider is located Given name 1: Your own first name Birth date: Today’s date – 3 years NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Expected output Actual output Search executes successfully. Message returned stating that no matching NSI records have been found. Page 9 of 24 Pass? (Y/N) NSI Action Input Create student using add function. Enter student details into add function. Expected output Details to enter: Family name: Street name where your provider is located. Given name 1: Your own first name Gender: Your gender Birth date: Today’s date – 3 years Name & Birth date verification: Unverified Residential status: Unknown Residential status verification: Unverified Actual output New NSI record saved in the NSI database. NSN and “active” record status returned. Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 10 of 24 Record the new NSN. (Note – this is the NSN for record A): Pass? (Y/N) 4.2 ADD – Unverified record with alternative name – Record B Provider is enrolling a new student who has not given an NSN. Provider enrols student and searches for an existing NSI record as part of this process. No record can be found on the NSI and the provider creates a new record that includes the student’s alternative name (i.e. alias or former name). Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Perform Search for student Details to enter: Family name: Name of the suburb/town where your provider is located Given name 1: Your own first name Given name 2: Name of the region where your provider is located Date of Birth: Today’s date – 3 years NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Expected output Actual output Search executes successfully. Message returned stating that no matching NSI records have been found. Page 11 of 24 Pass? (Y/N) NSI Action Input Create student using create/insert function. Enter student details into create function. Family name: Name of the suburb/town where your provider is located Given name 1: Your own first name Given name 2: Name of the region where your provider is located Gender: Male Birth date: Today’s date – 4 years Name & birth date verification: Unverified Residential status: Unknown Residential status verification: Unverified Alt Family name: MacPherson Alt Given name 1: Rob Alt Name Pref: Yes Alt Name & birth date verification: Unverified Expected output Actual output New NSI record saved in the Record the new NSN (Note – this is the NSN for record B): NSI database. Record correctly shows the student’s maiden name as an alternative name. NSN and “active” record status returned. Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 12 of 24 Pass? (Y/N) 4.3 ADD – Verified record – Record C Provider is enrolling a new student who has not given an NSN. Provider enrols student and searches for an existing NSI record as part of this process. No record can be found on the NSI and the provider creates a new record that includes verification of all of the data items. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Perform Search for student Details to enter: Family name: Name of your provider Given name 1: Your own first name Given name 2: Your own surname Given name 3: Marie Gender: Female Birth date: Today’s date – 20 days NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Expected output Actual output Search executes successfully. Message returned stating that no matching NSI records have been found. Page 13 of 24 Pass? (Y/N) NSI Action Input Create student using create/insert function. Enter student details into create function. Family name: Name of your provider Given name 1: Your own first name. Given name 2: Your own surname. Given name 3: Marie Gender: Female Birth date: Today’s date – 20 days. Name/DoB verification: Birth certificate Residential Status: Permanent resident Res Stat verification: Passport Expected output Actual output New NSI record saved in the NSI database. Record correctly shows the student’s details. NSN and “active” record status returned. Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 14 of 24 Record the new NSN (note this is the NSN for record C): Pass? (Y/N) 4.4 ADD – Verified record – Possible match – Record D Provider is enrolling a new student who has not given an NSN. Provider fully enrols the student and searches for an existing NSI record as part of this process. The search identifies a potential match but after viewing this record the provider determines that in fact the existing NSI record relates to a different student and so creates a new record that includes verification of all of the data items. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Attempt to create student record using create/insert function. Enter student details into create function. Family name: Name of your provider. Given name 1: Your own first name. Given name 2: Your own surname Given name 3: Marie Gender: Female Birth date: Today’s date – 10 days. Name/DoB verification: Birth certificate. Residential Status: Citizen Res Stat verification: Passport NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Expected output Actual output Search executes successfully. Override code & details from potential matching record(s) returned. Page 15 of 24 Record the override code OR if your system deals with the override code behind the scenes then record the details of the potentially matching NSI record that has been returned. Pass? (Y/N) NSI Action Create student using create/insert function but ensure that the override code1 is added to the input data. Input Input data from step 2 above. Override code produced from first create attempt. Expected output Actual output New NSI record saved in the NSI database. NSN and record status returned. 1 Pass? (Y/N) Record the new NSN (note this is the NSN for record D): Your interface may deal with the override code behind the scenes and instead your system may advise you that a closely matching record has been found and ask you to confirm that you really do want to create new record. NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 16 of 24 4.5 ADD – Verified record – Definite match Provider is enrolling a new student who has not given an NSN. Provider fully enrols the student and searches for an existing NSI record as part of this process. The search identifies a potential match but after viewing this record the provider determines that in fact the existing NSI record relates to a different student and so creates a new record that includes verification of all of the data items. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Log into NSI Attempt to create student record using create/insert function. Enter student details into create function. Family name: Name of your provider. Given name 1: Your own first name. Given name 2: Given name 3: Marie Gender: Female Date of Birth: Today’s date – 10 days. Name/DoB verification: Birth certificate. Residential Status: Citizen Res Stat verification: Passport Expected output Actual output Search executes successfully. Message returned stating that a Definitie matching NSI record has been found and the Matching NSN details. Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 17 of 24 Pass? (Y/N) 5 Update Record Test Scripts These tests are intended to ensure that the provider can use their NSI REST interface to update existing NSI records. The records that are updated in the following tests will have been created as part of executing the “Add Record Test Scripts”. 5.1 UPDATE – Name An existing NSI record is found for the student however the details on the NSI record are now out of date and need to be updated to reflect a change in the student’s name. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Log into NSI. Perform Search for student. Update the name details on record A Input Student Name – from record A2 Expected output Update name. Family name: Johnstone Given name 1: Henry Given name 2: Your own first name Actual output Search executes successfully. Search returns results, including Record A. Update executes successfully. Notes: 2 Note that record A is the record that you created as part of test script 4.1. NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 18 of 24 Pass? (Y/N) 5.2 UPDATE – Verification information Provider attempts to confirm the students’ personal information and verifies the data on the NSI record accordingly. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Log into NSI Perform Search for student. Update the verification details on record B using the update function. Input Student Name – from record B3 Expected output Update record data: Family name: Johnstone Given name 1: Henry Given name 2: Your own first name. Given name 3: Alistair Name/DoB Verification: Other Res. Status ver: Citizen Res. Status ver: Birth certificate Actual output Search executes successfully. Search returns results, including Record B. Update executes successfully. Notes: 3 Record B is the NSI record that you created as part of test script 4.2. NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 19 of 24 Pass? (Y/N) 5.3 UPDATE – Unsuccessful update attempt The provider attempts to update the verified record As the NSI record is already verified, an error is returned. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Log into NSI Perform Search for student. Perform update on record B. Input Student Name: Henry Johnstone Expected output Update name: Family name: Jones Given name 1: Harry Actual output Search executes successfully. Search returns results, including record B4 Unsuccessful update – error message returned: Error 034: This record contains verified name and birth date information. If you wish to update this information please raise a challenge. Notes: 4 Record B is the NSI record that you created as part of test script 4.2 and also used in test script 5.2 NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 20 of 24 Pass? (Y/N) 6 Merge Record Test Scripts These tests are intended to ensure that the provider can use their NSI XML interface to lodge a request for a group of NSI records to be merged. The records that are used in the following tests will have been created or located as part of executing the “Create Record Test Scripts”. 6.1 MERGE – No manual intervention required The provider lodges a request with the NSI Unit for the multiple records to be merged. You will need your results from test script 4.1, 4.2 and 4.3 in order to complete this test successfully. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Log into NSI. Perform merge request for the two records. Input Student on Record A5 Student on Record B6 Expected output Actual output Merge request executes successfully. Message 055 returned: Student records have been automatically merged. The master record is <master nsn>. Notes: 5 6 Record A is the NSI record that you created as part of test script 4.1 Record B is the NSI record that you created as part of test script 4.2 NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 21 of 24 Record the Master NSN Pass? (Y/N) 6.2 MERGE – Manual intervention required The provider lodges a request with the NSI Unit for the multiple records to be merged. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Log into NSI. Perform Search for student. Input Student on Record A7 Student on Record C8 Expected output Actual output Merge request executes successfully. Message 915 returned: Merge request requires manual intervention for the following reason(s). Please contact the MoE Service Desk if you require more information. -<reason for sending to Manual Intervention> Notes: 7 8 Record A is the NSI record that you created as part of test script 4.1 Record C is the NSI record that you created as part of test script 4.3 NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 22 of 24 Pass? (Y/N) 7 Create/Update Student-Provider Relationships These tests are intended to ensure that the provider can use their NSI REST interface to create new Student-Provider relationships or Update existing Student-Provider relationships on the NSI system. 7.1 STUDENT-PROVIDER RELATIONSHIP – Add Relationship Provider is enrolling a new student who has not given an NSN. Provider enrols student and searches for an existing NSI record as part of this process. An existing NSI record is found for the student and the provider matches against the existing record, but the provider needs to receive notifications of any changes against that record. Provider will submit a request to Create a Student-Provider relationship. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Expected output Actual output Log into NSI. Perform Search for student. Name: Anthony Butler NSN 13 Search executes successfully. NSN added to student record Submit request to create SPR with Student NSN: 13 Provider Code: Blank or your provider code Until date: Blank or today’s date + 3 months SPR created successfully Notes: NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 23 of 24 Pass? (Y/N) 7.2 STUDENT-PROVIDER RELATIONSHIP – Update existing Relationship Provider is enrolling a student who has previously enrolled at their organisation. Provider enrols student and searches for an existing NSI record as part of this process. An existing NSI record is found for the student and the provider matches against the existing record, but the provider needs to receive notifications of any changes against that record. Provider will submit a request to Update the Student-Provider relationship. Please complete the ‘Actual Output’ column and record any comments in the Notes section below. NSI Action Input Expected output Actual output Log into NSI. Perform Search for student. Student on Record A Search executes successfully. Submit request to update SPR with Student NSN: from Student A9 Provider Code: Blank or your provider code Until date: Today’s date + 3 months SPR updated successfully Notes: 9 Record A is the NSI record that you created as part of test script 4.1 NSI REST Interface Testing, Ministry of Education, v0.2 – August 2015 Page 24 of 24 Pass? (Y/N)