EI - Översikt automatiserade tester
Innehåll:
Automatiserade tester
Här beskrivs Engagemangsindex automatiserade tester för att verifiera förväntad funktionalitet.
Testerna exekveras i en byggserver så fort ny kod checkas in.
Persistenslager
Projekt: composite/svc
Paket: se.skltp.ei.svc.entity
Innehåller såväl unit tester som integrationstester för att verifiera funktionalitet i persistenslagret.
EngagementIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
timestamp_R5 | §7.5 Update - R5 | Positivt test som verifierar korrekt beteende att creationTime och UpdateTime sätts vid skapande respektive uppdatering av engagemangsposten |
shouldFindPreviouslySavedPerson | Test av persisteringen | |
findByMultipleKeys | Verifiering av korrekt beteende att sökning kan göras baserat på en lista med ID:n | |
findContentAllFields | Verifiering av korrekt beteende att en sökning ger korrekt resultat när alla query-parametrar anges | |
findContentMandatoryFields | Verifiering av korrekt beteende att en sökning ger korrekt resultat när endast de obligatoriska query-parametrarna ages (serviceDomain,registeredResidentIdentification) | |
findContentMandatoryFieldsAndDate | Verifiering av korrekt beteende att och är en utökning av testet findContentMandatoryFields och används för att testa att mostRecentContent som query-parameter. Engagemang med mostRecentContent med äldre timestamp ska inte returneras. | |
findByRegisteredResidentIdentification | Verifering av korrekt beteende att registeredResidentIdentification som query-parameter returnerar korrekt post |
EngagementTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
businessKeyTest | - | Verifierar korrekt beteende kring unikheten av businessKeys |
equalsTest | - | Verifierar korrekt beteende kring vad som anses vara en unik engagemangspost när dessa jämförs |
hashCodeTest | - | Verifierar korrekt beteende kring att hashCode returnerar korrekt värde för engagemang |
EntityTransformerTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
dateParseTest | - | Verifierar korrekt beteende för hur datum ska "parsas" när Engagemangsobjekt ska skapas |
incorrectDateParseTest | - | Negativt test som verifierar att ett IllegalArgumentException kastas när det angiva indatan inte har formatet YYYYMMDDhhmmss |
Verksamhetslager
Projekt: composite/svc
Paket: se.skltp.ei.svc.service
Innehåller unit tester för att verifiera att verksamhetsregler i tjänstekontraktsspecifikationen för engagemangsindex följs.
Tester är namnsatta med referens till regler i tjänstekontraktsspecifikationen (R1 - RN) för enkel mappning mellan krav och test.
Persistenslagret är mockat mha testramverket Mockito.
ProcessBeanTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
update_r1_positive() | §7.5 Update - R1 | Positivt test som validerar normalt beteende |
update_r1_negative_validate_non_equal() | §7.5 Update - R1 | Negativtest som validerar korrekt felmeddelande |
update_r7_positive_owner_matches_logicaladdress() | §7.5 Update - R7 | Positivt test som validerar normalt beteende |
update_r7_negative_owner_dont_match_logicaladdress() | §7.5 Update - R7 | Negativt test som validerar korrekt felmeddelande när logisk adress |
update_r7_neagtive_null_header() | §7.5 Update - R7 | Negativt test som validerar korrekt felmeddelande när logisk adress saknas |
update_ERR_mandatory_fields_are_missing | §7.4 Update | Negativt test som validerar korrekt beteende när någon av de obligatoriska fälten i engagemang saknas |
processNotication_update_R1_OK | §7.5 Update - R1 | Positivt test som validerar korrekt beteende vid processNotification för processNotification |
processNotification_update_R1_ERR_null | §7.5 Update - R1 | Negativt test som validerar korrekt felmeddelande vid processNotificaton för processNotification |
processNotification_update_R1_ERR_validate_non_equal | §7.5 Update - R1 | Negativt test som validerar korrekt felmeddelande för processNotification |
processNotification_R4_OK_filter_should_remove_circular_notifications | §10.5 ProcessNotification - R4 | Positivt test som validerar korrekt beteende att engagemang filtreras bort när owner på engagemanget är samma som owner på indexet. |
processNotification_R4_OK_no_engagements_left | §10.5 ProcessNotification - R4 | Positivt test som validerar korrekt beteende att att man har en tom lista när alla engagemang filtrerats bort. |
processNotification_ERR_owner_is_missing | $10.4 - ProcessNotification | Negativt test som validerar korrekt felmeddelande när owner-fältet saknas |
ProcessBeanIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
update_R2_OK_delete_engagesments_before_save | §7.5 Update - R2 | Positivt test som validerar normalt beteende att engagemang inte sparas när deleteFlag är satt till true |
update_R2_OK_delete_engagesments_after_save | §7.5 Update - R2 | Positivt test som validerar normalt beteende att engagemang tas bort när deleteFlag är satt till true |
update_R2_OK_should_not_delete_when_deleteflag_is_false | §7.5 Update - R2 | Positivt test som validerar normalt beteende att engagemang inte tas bort när deleteFlag är satt till false |
update_R4_OK_new_content_should_result_in_an_update | §7.5 Update - R4 | Positivt test som validerar normalt beteende att nya poster uppdateras när det finns nytt innehåll att spara. Detta görs just nu bara för mostRecentContent. |
update_R4_OK_new_metadata_should_not_update_engagements | §7.5 Update - R4 | Positivt test som validerar normalt beteende att det skapas nya poster när attribut som är del av postens unikhet uppdateras. |
update_R5_OK_creationtime_should_be_set_when_saving | §7.5 Update - R5 | Positivt test som validerar normalt beteende att endast creationTime sätts när posten sparas |
update_R5_OK_updatetime_should_be_set_when_updating | §7.5 Update - R5 | Positivt test som validerar normalt beteende att updateTime har satts när en post uppdateras |
update_R5_OK_updatetime_should_only_be_set_on_update | §7.5 Update - R5 | Positivt test som validerar normalt beteende att updateTime inte uppdateras om det inte finns något nytt innehåll att spara. |
update_R6_OK_owner_should_be_set_when_saved | §7.5 Update - R6 | Positivt test som validerar normalt beteende att indexets ägare sätts som owner |
processNotification_R1_OK_owner_should_be_saved | §10.5 ProcessNotification - R1 | Positivt test som verifierar normalt beteende att posten sparas samt att det nu är det medföljande värdet på owner som ska sparas. |
processNotification_R2_OK_delete_engagements_before_save | §10.5 ProcessNotification - R2 | Positivt test som verifierar normalt beteende att det inte sparas någon post när deleteFlag är satt till true. |
processNotification_R2_OK_delete_engagements_after_save | §10.5 ProcessNotification - R2 | Positivt test som verifierar normalt beteende att sparade poster tas bort om deleteFlag är satt till true. |
processNotification_R2_OK_should_not_delete_when_deleteflag_is_false | §10.5 ProcessNotification - R2 | Positivt test som verifierar normalt beteende att det inte tas bort någon sparade poster när deleteFlag är satt till false |
processNotification_R5_OK_should_not_remove_posts_with_other_owner | §10.5 ProcessNotification - R5 | Positivt test som verifierar normalt beteende att engagemang inte tas bort i normalfallet där poster inte byter owner. |
processNotification_R5_OK_should_one_store_engagement_with_new_owner | §10.5 ProcessNotification - R5 | Positivt test som verifierar normalt beteende att engagemang tas bort och ersätts med engagemang med ny owner för engagemang där indexet är owner. |
FindContentBeanTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
findContent_R1_OK | §9.5 FindContent - R1 | Positivt test som verifierar normalt beteende att rätt post hämtas ut |
findContent_R1_OK_validate_findContent | §9.5 FindContent - R1 | Positivt test som verifierar normalt beteende att valideringen av en korrekt förfrågan går igenom |
findContent_R1_ERR_validate_findContent | §9.5 FindContent - R1 | Negativt test som validerar korrekt felhantering och felmeddelande när antingen serviceDomain eller registeredResidentIdentification saknas |
Integrationslager
Projekt: module/intsvc
Paket: se.skltp.ei.intsvc.integrationtests
Innehåller integrationstester för såväl enskilda integrationskomponenter samt end-to-end integrationstester som påvisar att förväntad funktionalitet erhålls hela vägen och inte enbart i enskilda komponenter.
Testklasser är uppdelade efter befintliga integrationskomponenter samt en övergripande end-to-end integrationstestklass.
EndToEndIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
endToEnd_update_OK | Verifierar flödet hela vägen från inkommande Update-anrop till notifiering till prenumeranter av ProcessNotification-anrop. | |
endToEnd_update_ERR_timeout_in_subscriber | Negativt test som validerar korrekt felhantering då inkommande Update-anrop drabbas av att en prenumeranter inte svarar. |
UpdateServiceIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
update_OK | Verifierar förväntat beteende i update-service vid normalt användande. | |
update_R1_ERR_duplicate_tx_found | §7.5 Update - R1 | Negativt test som validerar korrekt felmeddelande när Update request innehåller två poster med samma nyckel. |
update_R7_ERR_owner_dont_match_logicaladdress | §7.5 Update - R7 | Negativt test som validerar korrekt felmeddelande när logisk adress i Update request inte är identisk med engagemangsindex egna HSA ID |
update_ERR_max_number_of_engagements | $7.3 Update | Negativt test som validerar korrekt felmeddelande när fler än 1000 engagemang skickas med i samma begäran |
update_ERR_mandatory_fields_are_missing | $7.4 Update | Negativt test som validerar korrekt felmeddelande när något av de obligatoriska fälten saknas. |
ProcessServiceIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
process_OK | Bland annat §7.5 Update - R3 | Verifierar förväntat beteende i process-service vid normalt användande. |
process_notification_OK | Bland annat $10.5 ProcessNotification - R3 | Verifierar förväntat beteende i process-service för processNotification. |
NotifyServiceIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
notify_OK | Verifierar förväntat beteende i notify-service vid normalt användande. | |
servicedomain_filtering_OK | Verifierar att notify-tjänsten får rätt antal meddelanden när matchande filter finns för en av prenumeranterna. | |
filter_should_remove_one_message_for_1_subscriber | Verifierar att notify-tjänsten inte får ett meddelande när ett ej matchande filter finns för en av prenumeranterna. | |
filter_should_one_send_message_to_1_subscriber | Verifierar att notify-tjänsten enbart får ett meddelande när enbart 1 prenumerant har matchande filter och där övriga att ej matchande filter. |
NotificationServiceIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
notification_OK | Validerar bland annat $10.5 ProcessNotification - R1 | Verifierar förväntat beteende i notification-service vid normalt användande. |
update_R1_ERR_duplicate_tx_found | §7.5 Update - R1 | Negativt test som validerar korrekt felmeddelande när ProcessNotification request innehåller två poster med samma nyckel. |
processNotification_ERR_max_number_of_engagements | $10.3 ProcessNotification | Negativt test som validerar korrekt felmeddelande när fler än 1000 engagemang skickas med i samma begäran |
FindContentServiceIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
findContent_OK | Verifierar förväntat beteende i findContent-service vid normalt användande. | |
findContent_ERR_R1_validate_findContent | §9.5 FindContent - R1 | Negativt test som validerar korrekt felmeddelande när antingen serviceDomain eller registeredResidentIdentification saknas |
findContent_OK_R2_find_engagements | §9.5 FindContent - R2 | Positivt test som verifierar korrekt beteende att man får ut en specifik post genom att använda flera begränsande världen i frågan |
GetLogicalAddresseesIntegrationTest
Test | Validerar regel i TK | Kommentar |
---|---|---|
getLogicalAddresses_OK | Verifierar förväntat beteende i GetLogicalAddressesByServiceContract-tjänsten vid normalt användande. |
SubscriberTest
Verifierar den logik som används för att filtrera engagemang per prenumerant.
Test | Validerar regel i TK | Kommentar |
---|---|---|
no_filters | Verifierar förväntat beteende att inga engagemang filtreras bort när det inte finns filter. | |
filter_with_servicedomain | Verifierar förväntat beteende att engagemang av två engagemang filtreras bort med ett filter med servicDomain | |
filter_with_servicedomain_and_categorization | Verifierar förväntat beteende att engagemang av två engagemang filtreras bort med ett filter med serviceDomain och | |
filter_with_wrong_category | Verifierar förväntat beteende att alla engagmang filtreras bort och endast en tom EngagementTransaction returneras |
SubscriberCacheImplTest
Verifierar den logik för att spara och läsa upp EI:s prenumerant-cache.
Test | Validerar regel i TK | Kommentar |
---|---|---|
test_write_to_file | Verifierar förväntat beteende att det går att skriva prenumerantcachen till fil | |
test_write_and_read_to_file | Verifierar förväntat beteende att det går att skriva och läsa prenumerantcachefilen |