For at kunne køre automatiserede tests af brugsscenarier som baserer sig på login via SEB IdP / NemLog-in IdP (autentifikation med MitID Erhverv) eller login via Lokal IdP (egne identifikationsmidler) er der to mulige tilgange:
1) Simulering af login-flowet gennem selv-udstedelse af bootstraptokens
Som en del af ens automatiseret test dannes bootstraptokens (fx via Seal bibliotekerne, se Teknisk overblik til anvendere#Biblioteksunderstøttelse), som signeres med eget certifikat og efterfølgende omveksles via BST2SOSI snitfladen.
Dette kræver at man oprettes som trusted bootstraptoken udsteder hos SOSI-STS i NSP testmiljøerne. Dette gøres via BST2SOSI Medarbejderbilletomveksling (Vælg "Anden tokenudsteder" og angiv oplysninger om eget certifikat som benyttes til signering af bootstraptokens).
2) Afvikling af login-flowet i en browser gennem et tool for automatiseret webtest
Der findes en række tools som gør det muligt, at scripte en brugerinteraktion med en browser. I og med NemLog-ins pre-produktionsmiljø (DevTest4 / tidligere også kald betatestmiljø) gør det muligt at oprette testbrugere, som til testformål kan logge ind med brugernavn/password kan også autentifikation i NemLog-in let scriptes.
Til inspiration er der her inkluderet et eksempel på et Java testcase baseret på open-source og non-profit værktøjet https://www.selenium.dev/.
I eksemplet tilgås en demo-applikation som er tilsluttet SEB IdP (det kunne være ens egen applikation), vælges "NemLog-in" i oversigten over mulige login-muligheder hos SEB IdP, derefter vælges "Test Login" fanen ho NemLog-in og brugernavn/password angives, efterfølgende vælges "medarbejder-kontekst" i NemLog-in.
OBS: Bemærk at automatiserede webtests som denne kan begynde at fejle hvis/når designet i de webløsninger som indgår i flowet (SEB, NemLog-in) ændres.
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class SeleniumTest {
@Test
public void SEB_NL_flow()
}