SID:Kwalificatie-tech: verschil tussen versies
Regel 11: | Regel 11: | ||
{{Info|De URL van de beheerapplicatie op de kwalificatieomgeving is https://beheer-q.nv.kennisnet.nl/admin/}} |
{{Info|De URL van de beheerapplicatie op de kwalificatieomgeving is https://beheer-q.nv.kennisnet.nl/admin/}} |
||
− | De service tests zijn beschikbaar als [[Media:NV-Kwalificatie-testsuite.zip|SOAPUI project] |
+ | De service tests zijn beschikbaar als [[Media:NV-Kwalificatie-testsuite.zip|SOAPUI project]]. In dit project is een testsuite opgenomen. Hierin is geïllustreerd welke requests er van het systeem worden verwacht, en welke responses de Nummervoorziening daarop geeft. |
{{Info|SOAPUI gebruikt standaard zijn eigen, verouderde, Java runtime. Deze versie heeft niet de juiste SSL ondersteuning om met de Nummervoorziening te communiceren. Installeer zelf een Java versie 8 of hoger, en configureer SOAPUI om deze versie te gebruiken.}} |
{{Info|SOAPUI gebruikt standaard zijn eigen, verouderde, Java runtime. Deze versie heeft niet de juiste SSL ondersteuning om met de Nummervoorziening te communiceren. Installeer zelf een Java versie 8 of hoger, en configureer SOAPUI om deze versie te gebruiken.}} |
Versie van 23 dec 2016 09:05
Kwalificatietest – services
Dit document beschrijft een deel van de kwalificatietest voor aansluiting van een systeem op de Nummervoorziening. In dit deel wordt geverifieerd of het aansluitende systeem op de juiste wijze de API van de Nummervoorziening aanroept, en of de foutsituaties die voorkomen correct worden afgehandeld.
De kwalificatietest wordt gerund op de kwalificatieomgeving. Deze test wordt doorlopen door een verantwoordelijke van het aansluitende systeem, in het bijzijn van een implementatie engineer van Kennisnet. De verantwoordelijke van het aansluitende systeem voert de gevraagde tests uit volgens de voorschriften. De implementatie engineer beoordeelt of de test volgens de beschrijving is uitgevoerd en of het antwoord voldoet aan de gestelde eis.
Het endpoint van de service op de kwalificatieomgeving is https://service-q.id.school/eck/ws/2015-09/ |
Om deze omgeving aan te kunnen roepen moet het aanroepende systeem een PKI Overheid certificaat gebruiken. Het SERIALNUMBER veld in het subject van dit certificaat wordt gebruikt om het aanroepende systeem te autoriseren. Autoriseren van aansluitende systemen vindt plaats in de beheerapplicatie van de kwalificatieomgeving.
De URL van de beheerapplicatie op de kwalificatieomgeving is https://beheer-q.nv.kennisnet.nl/admin/ |
De service tests zijn beschikbaar als SOAPUI project. In dit project is een testsuite opgenomen. Hierin is geïllustreerd welke requests er van het systeem worden verwacht, en welke responses de Nummervoorziening daarop geeft.
Deze testen hebben tot doel het verkrijgen van zekerheid dat het gebruik van de Nummervoorziening niet tot operationele problemen leidt in het normale dagelijkse gebruik op school. In de test worden doelbewust manipulaties gevraagd die tot uitzonderingen leiden. Als een manipulatie niet door normale gebruikers en beheerders van het aansluitende systeem kunnen worden uitgevoerd, bijvoorbeeld omdat het systeem hiertegen beschermd is, dan geldt de test op dit punt als geslaagd.
Ping test
In deze test wordt de connectiviteit, certificaat-verwerking en WS-Addressing getest. Als het aansluitende systeem de ping service niet ondersteunt, voer deze test dan uit met de service retrieveChains.
Request 1
Stuur een ping request.
Response 1
Stel vast dat het antwoord geen SOAP Fault is
Stel vast dat het antwoord de huidige tijd bevat in het veld Envelope/Body/pingResponse/systemTime (bij gebruik van retrieveChains, stel vast dat de reponse een geldige chainId bevat).
Request 2
- Stuur een ping request. Pas de WS-A From: header zo aan dat deze alleen http://www.w3.org/2005/08/addressing/anonymous bevat, dwz geen geldig oin.
Response 2
- Stel vast dat het antwoord een SOAP Fault is
- Stel vast dat de foutmelding is “Technische fout: het request bevat geen (geldige) From header.”
Request 3
- Stuur een ping request. Pas de instelling van het systeem aan zodat er een WS-A From header wordt gestuurd met een onbekend BRIN nummer, bijvoorbeeld 99XX. De volledige header ziet er dan uit als http://www.w3.org/2005/08/addressing/anonymous?oin=0000000700099XX00000
Response 3
- Stel vast dat het antwoord een SOAP Fault is
- Stel vast dat de foutmelding is “Uw Bevoegd Gezag is nog niet geautoriseerd voor het gebruik van de Nummervoorziening.”.
- Stel vast dat melding die de eindgebruiker hierover ziet in het aansluitende systeem helder en duidelijk is.
Ophalen ECK ID test
Deze test valideert dat de primaire functie van de Nummervoorziening, het aanmaken en retourneren van ECK ID’s, op de juiste manier wordt gebruikt door het aansluitende systeem.
Request 1 - 7
- Haal voor onderstaande PGN’s het ECK ID op. Gebruik voor elk ECK ID een eigen, onafhankelijk request. Gebruik de ECK keten en de VO sector.
Response 1 - 7
- Ga na dat de response geen SOAP fault is.
- Ga na dat het antwoord het correcte ECK ID bevat
PGN | hPGN (6) | ECK ID |
---|---|---|
139227672 | d44720 | |
220500186 | 2b6f93 | |
479694217 | 9d944f | |
586613675 | b02c0a | |
666614192 | 42ae94 | |
854868604 | 9465bc | |
992795862 | ec35c5 |
Request 8 – 15
- Haal voor onderstaande identifiers het ECK ID op. Gebruik een eigen, onafhankelijk request voor elke identifier. Gebruik de ECK keten en de VO sector.
Response 8 – 21
- Ga na dat het response geen SOAP Fault is
- Ga na dat het antwoord het correcte ECK ID bevat
Identifier | hPGN (6) | ECK ID |
---|---|---|
17ff6722@54321 | 6a6d93 | |
4ah4ef55@54321 | 51190c | |
abc@3hof.nl@54321 | f67e91 | |
Albert.Bijker@driehof.nl:54321 | 7e8fd5 | |
ca663d43@54321 | 975792 | |
mkb@3hof.nl@54321 | eb4637 | |
tkr@3hof.nl@54321 | 882bf4 | |
vvd@3hof.nl@54321 | 735af7 | |
{1c19a9c8-051d-469b-a821-55ed475bfd61} | 7f355b | |
{761bb5af-989c-4cef-aac0-168755c4f247} | 77d650 | |
{8c4fd902-6460-4121-aeca-169f6d39ba6b} | ba5cf2 | |
{8fecd96c-ad4d-40a8-a751-a5d35d649f47} | e7e7a7 | |
{fdd5f9d7-f7b0-4f00-9aa8-7f15c4a4364e} | 74b62a |
Onderstaande tests 22 - 25 gaan er van uit dat de waarden die het systeem in het request opneemt, kunnen worden aangepast door de gebruiker of beheerder van het systeem. Als dat niet het geval is, zijn deze tests voor dit systeem geslaagd.
Request 22
- Haal een ECK ID op voor een leeg PGN. Gebruik de ECK keten en de VO sector.
Response 22
- Stel vast dat het response een SOAP fault is
- Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “Leeg HPgn object ontvangen” bevat
- Stel vast dat de foutmelding die de gebruiker hierover ziet duidelijk is
Request 23
- Haal een ECK ID op en gebruik een gehasht PGN dat een positie te kort is. Gebruik de ECK keten en de VO sector.
Response 23
- Stel vast dat het response een SOAP Fault is
- Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “HPgn is te kort. Een tekenreeks van minimaal 64 karakters werd verwacht.”
- Stel vast dat de foutmelding die de gebruiker hierover ziet duidelijk is
Request 24
- Haal een ECK ID op. Gebruik de ECK keten en de VO sector. Verander een letter in de waarde van de VO Sector in het request.
Response 24
- Stel vast dat het response een SOAP Fault is
- Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “Ontvangen waarde voor sector is onbekend.”
- Stel vast dat de foutmelding die de gebruiker hierover ziet duidelijk is
Request 25
- Haal een ECK ID op. Gebruik de ECK keten en de VO sector. Verander een letter in de waarde van de ECK Keten in het request.
Response 25
- Stel vast dat het response een SOAP Fault is
- Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “Ontvangen waarde voor keten is onbekend.”
- Stel vast dat de foutmelding die de gebruiker hierover ziet duidelijk is
Substitutie test
Ga in de beheer applicatie na dat er bij aanvang van deze test geen bestaande substituties zijn voor deze school. Als ze er wel zijn, verwijder deze met de ‘delete’ knop.
Substitutie 1
Haal een ECK ID op voor PGN 154341101. Gebruik de ECK keten en de VO sector. Onthoud het ECK ID als ‘oud ECK ID’.
Haal een ECK ID op voor PGN 167617345. Gebruik de ECK keten en de VO sector. Onthoud het ECK ID als ‘nieuw ECK ID’.
Roep de substitutieservice aan om het PGN 154341101 te vervangen door 167617345. Gebruik de ECK keten en de VO sector.
Haal een ECK ID opnieuw op voor PGN 154341101. Gebruik de ECK keten en de VO sector.
Stel vast dat de response een SOAP Fault is.
Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “De aangeleverde HPgn is geblokkeerd” bevat.
Stel vast dat de melding die de gebruiker hierover ziet in het systeem duidelijk is.
Haal een ECK ID opnieuw op voor PGN 167617345. Gebruik de ECK keten en de VO sector.
Stel vast dat de response geen SOAP Fault is.
Stel vast dat het geleverde ECK ID in het response gelijk is aan ‘oud ECK ID’, en niet aan ‘nieuw ECK ID’.
Substitutie 2
Haal een ECK ID op voor PGN 942798016. Gebruik de ECK keten en de VO sector. Onthoud het ECK ID als ‘oud ECK ID’.
Haal een ECK ID op voor PGN 952351626. Gebruik de ECK keten en de VO sector. Onthoud het ECK ID als ‘nieuw ECK ID’.
Roep de substitutieservice aan om het PGN 942798016 te vervangen door 952351626. Gebruik de ECK keten en de VO sector.
Stel vast dat de response geen SOAP Fault is
Roep de substitutieservice aan om het PGN 603778872 te vervangen door 952351626. Gebruik de ECK keten en de VO sector.
Stel vast dat de response een SOAP Fault is
Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “Deze substitutie bestaat al: ” bevat
Stel vast dat de melding die de gebruiker hierover ziet in het systeem duidelijk is.
Roep de substitutieservice aan om het PGN 942798016 te vervangen door 952351626. Gebruik de ECK keten en de VO sector.
Stel vast dat de response een SOAP Fault is
Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “Deze substitutie bestaat al: ” bevat
Stel vast dat de melding die de gebruiker hierover ziet in het systeem duidelijk is.
Batch test
Deze tests gaan na of het aansluitende systeem zich netjes aan de limieten van de batch verwerking houdt.
Batch 1
Stel een batch request samen op basis van de PGNs uit onderstaande tabel. Zorg er hierbij voor dat de gehashte PGN uit rij 7 een ongeldige waarde heeft (te lang of te kort) of leeg is. Gebruik de ECK keten en de VO sector.
Stuur het batch request op.
Stel vast dat het antwoord geen SOAP Fault is
Stel vast dat het antwoord een batchID bevat
Wacht minstens 10 seconden en haal dan het batch resultaat op, op basis van het batchID.
Stel vast dat het antwoord geen SOAP fault is
Stel vast dat het antwoord 9 correcte ECK IDs bevat
Stel vast dat het antwoord 1 failed element bevat, voor index 7 en met tekst “Genereren van EckId niet succesvol”
Stel vast dat de melding die de gebruiker hierover ziet in het systeem duidelijk is.
PGN | hPGN (6) |
---|---|
587381310 | e95075 |
603778872 | f1098f |
624833057 | ecc3f4 |
640093024 | dda693 |
644153258 | b173a0 |
656096809 | b46daf |
?? | |
656096810 | 5055af |
661678738 | 996ab |
666560341 | c9e811 |
Batch 2
Stel een batch request samen op basis van de PGNs uit bovenstaande tabel. Zorg er hierbij voor dat de gehashte PGN uit rij 7 een ongeldige waarde heeft (te lang of te kort) of leeg is. Gebruik de ECK keten en de VO sector.
Stuur het batch request op.
Stel vast dat het antwoord geen SOAP Fault is
Stel vast dat het antwoord een batchID bevat
Wacht niet en haal het batchresultaat onmiddellijk op, op basis van het batchid.
Stel vast dat de response een SOAP Fault is
Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “De school mag tijdelijk geen batches ophalen wegens een opgelegde cooldown timeout.” bevat
Stel vast dat de melding die de gebruiker hierover ziet in het systeem duidelijk is.
Wacht 10 seconden vanaf het vorige request en haal het batchresultaat opnieuw op
Stel vast dat de response een SOAP Fault is
Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “U kunt tijdelijk de batch niet ophalen wegens het niet honoreren van de cooldown periode.” is
Stel vast dat de melding die de gebruiker hierover ziet in het systeem duidelijk is.
Wacht minstens 20 seconden na het vorige request en haal dan het batch resultaat op, op basis van het batchID.
Stel vast dat het antwoord geen SOAP fault is
Stel vast dat het antwoord 9 correcte ECK IDs bevat
Stel vast dat het antwoord 1 failed element bevat, voor index 7 en met tekst “Genereren van EckId niet succesvol”
Stel vast dat de melding die de gebruiker hierover ziet in het systeem duidelijk is.
Wacht 10 seconden en haal dan het batch resultaat opnieuw op, op basis van het batchID.
Stel vast dat de response een SOAP Fault is
Stel vast dat het veld Envelope/Body/Fault/detail/message de tekst “Batch reeds opgehaald.” is
Stel vast dat de melding die de gebruiker hierover ziet in het systeem duidelijk is.