Test och kvalitetssäkring
GODKÄND
Innehåll
Inledning
Syfte: Denna sida finns för att du skall få insikt i vilka delar av test och kvalitetssäkring som är viktiga vid utveckling och förvaltning av en app.
Målgrupp: Beslutsfattare, projektledare, uppdragsledare, testledare och förvaltningsansvariga.
Instruktion för användning: För att få en överblick över de de speciella behov av test och kvalitetssäkring som identifierats, se sammanfattningen nedan. Mer information om de påverkade områdena presenteras sedan under respektive rubrik.
Checklistor för arbete med beredning och UX innehåller kopplingar till test och kvalitetssäkring. Se Utvärdering av app-initiativ.
Test och kvalitetssäkring på Inera beskrivs på en övergripande nivå i Ineras teststrategi (ej publicerad ännu - referens ska infogas när det är klart) och i Tjänstehandboken (pågående uppdateringar - referens ska infogas när det är klart). Information kan även nås via Utvecklingsramverkets sida för test och kvalitetssäkring https://inera.atlassian.net/wiki/spaces/UtvR/pages/2471364052.
För fler länkar med information om bl a hur WCAG appliceras på mobila enheter och förslag på testverktyg se avsnittet Länkar.
App-strategi: Här finns en introduktion till Ineras app-strategi, i vilken test och kvalitetssäkring är en del.
Sammanfattning
För test och kvalitetssäkring av appar finns delar som behöver uppmärksammas, speciellt under beredningen för att ta fram ett väl underbyggt beslutsunderlag och under projekt/förvaltnings-planeringen för att ge de rätta förutsättningarna för utveckling och förvaltning.
Dessa områden har identifierats som särskilt viktiga för att värdera hur valet av implementation, i en app eller som webbapp, kan påverka tjänstens kvalitet:
Användbarhet
Digital tillgänglighet
Informationssäkerhet (se Informationssäkerhet - appar)
För att säkerställa tillräcklig test och verifiering behövs:
tillgång till ett relevant urval av testenheter (typer av enheter, olika plattformar, flera versioner av operativsystemen)
tester för kombination app och webbapplikation för tjänsten, när så är aktuellt
analys för urval av testanvändares personliga inställningar för enheten och i appen
testscenarier för både expertanvändare och nybörjare
utvalda hjälpmedel för tillgänglighetstester
fokus på mobila egenskaper
testverktyg för automatisering och för att testa tillgänglighet
sårbarhetsanalys och bedömning av behov för övriga säkerhetstester
förberedelser för att kunna ladda ner och testa på en ännu ej publicerad version av appen
tid för slutverifiering och granskning inför publicering
planerad hantering av kommande releaser av operativsystem och nya versioner av enheter (inom förvaltning)
analys av vilka behov av kvalitetssäkring som kan finnas vid avveckling av appen
Notera att om appen klassas som en medicinteknisk produkt så finns den här standarden: IEC 82304-1:2016. Det betyder också krav på CE-märkning.
Kvalitetssäkring
Som för all utveckling ligger grunden till ett effektivt arbete med kvalitetssäkring i förberedelserna. Det handlar om allt från krav- och behovsinsamling, utvecklingsprocess som inkluderar test och förväntas leda till publicering av appen, därefter förvaltning och slutligen en kontrollerad avveckling. Specifikt för att kvalitetssäkra appar är behoven av att:
Komplettera krav och behovsanalys med olika användarprofiler för vilka användare av appen som förväntas. Det kan vara nybörjare, expertanvändare som använder enhetens många finesser eller en speciell verksamhetskategori. För både utveckling och test är det nödvändig information för att appen ska nå god användbarhet för målgruppen. Förväntningarna på appen kan skifta mellan olika användare och leda till stor variation av hur appen upplevs.
Göra en riskanalys kring olika teknikval som visar konsekvenser kring användbarhet, digital tillgänglighet och informationssäkerhet. Specifika förutsättningar kring arkitektur och design kan då bli synliggjorda och ger möjlighet till riktade tester mot identifierade problemområden och potentiella sårbarheter.
Ta reda på vilka tredjepartsprodukter som ingår och vilken påverkan de kan ha.
Säkerställa att nödvändiga testmiljöer finns tillgängliga och att app-specifika testverktyg är finansierade. Här ställs extra krav på antal enheter som behövs och en plan för i vilken grad testning ska ske på olika versioner av operativsystem och med olika inställningar.
Planera för en kombination av manuella och automatiserade tester för att så snabbt som möjligt täcka in olika testaspekter. Att testa manuellt som en verklig användare anses ge den viktigaste återkopplingen, men för snabba regressionstester av funktionaliteten kan automatiserade tester vara effektiva.
Ta reda på och planera för att uppfylla kraven på verifiering inför publicering av appen
Planera test inom förvaltning för att kunna upprätthålla kvaliteten på tjänsten som appen tillhandahåller. Verifiera regelbundet funktionaliteten på nya versioner av operativsystem och nya typer av enheter som kan få ändrade eller nya funktioner som användarna förväntar sig ska fungera med appen.
Planera användartester, specifikt med avseende på digital tillgänglighet men även för övriga målgrupper, för att få viktig återkoppling och därmed möjlighet att förbättra appen och öka användningen av den. Det kommer också att ge kunskap som kan användas generellt i utveckling och test av appar för att få bättre användbarhet och tillgänglighet vid kommande publiceringar.
Testmiljö
Det behövs uttalade mål för testäckning så att testmiljön kan vara anpassad för att ge förutsättningar för att nå dem. För planering av tillgängliga testmiljöer, se på vilka aspekter som behöver tidig testning och vad som med mindre risk kan senareläggas.
För att kunna uppfylla kraven på testmiljö för appar krävs att:
Testversioner av appen kan laddas ner
För att ha tillgång även till äldre testversioner av appen sparas på de utvalda enheter
Tillgången på mobila enheter av olika typer är tillräcklig, i kombination med emulerade/simulerade enheter
De olika versionerna av operativsystem inkluderar de senaste
Olika typer av inloggning stöds
Certifikat finns installerat, om behov finns
Ha tillgång till verktyg för automatisering
Ha tillgång till verktyg för test av digital tillgänglighet
Ha tillgång till verktyg för prestandatester
Kontinuerlig utvärdering och test
Kvalitetssäkringen är beroende av att appen kontinuerligt utvärderas och testas under utvecklingen för att så snabbt som möjligt kunna göra förbättringar och åtgärda eventuella brister och minimera risken att påverka tidplanen för publicering. Slutverifieringen förväntas visa på en app med god användbarheten som ska ge nytta och en bra upplevelse till användaren.
Att utvärdera under testningen:
Vilket är det första intrycket av appen?
Finns och fungerar olika typer av inloggning?
Vilka personliga inställningar kan göras och är de relevanta eller saknas något?
Fungerar växling mellan appar?
Hur upplevs informationsflöden och aktivitetsflöden i appen (t ex fungerar menystrukturen väl)?
Är de mobila egenskaperna en tillgång eller begränsning under användningen?
Är appen användbar under de förhållanden som målgruppen kan förväntas använda den?
Fungerar enheternas olika funktioner bra tillsammans med appen?
Är appen användbar både i Landscape och Portrait mode?
Hur påverkar de mindre enheternas skärmstorlek och upplösning appens användbarhet och tillgänglighet?
Är appen användbar med de olika hjälpmedel som finns för att öka tillgängligheten (t ex skärmläsare) ?
Hanteras personuppgifter? I så fall, hanteras de på ett säkert sätt? Var lagras data och när raderas den?
Finns specifika krav på inloggning för att appen ska få hantera information? I så fall, är de uppfyllda?
Kan användardata nås endast i inloggat läge?
Om appen kräver en viss säkerhetsnivå, spärras användning om nödvändiga funktioner inte finns på enheten?
Är appen spärrad för användning om den mobila enheten har en äldre version av operativsystem som inte längre stöds?
Testningen ska utföras på ett urval av enheter som förväntas vara vanliga bland användarna.
Efter publicering kan uppföljningar göras för att se om inloggningarna från olika mobila enheter stämmer med förväntningarna eller om det indikerar att urvalet bör ändras för framtida tester.
Acceptanstest
Planeringen för en effektiv acceptanstest baseras på att en väl fungerande besluts- och utvecklingsprocess har tagit fram en kandidat till driftsättning/publicering och med en god kännedom om målgruppens behov och förutsättningar ska den nu utvärderas. Acceptanstesterna ska se till helheten och bli vägledande för beslut om att publicera eller inte.
Inför acceptanstester ska det finnas kunskap om hur testtäckningen byggts upp under utveckling för att ge indikationer på om något område behöver extra analys och/eller test.
Om nya versioner av mobila enheter har kommit ut sedan senaste testerna av appen så krävs åtminstone en analys om dessa ska ingå i underlaget för acceptanstesterna.
Var uppmärksam på att också den senaste versionen av operativsystemen finns i testmiljön för de olika enheterna.
Acceptanstester ska innehålla:
Förväntade användarscenarier som kan verifiera funktionalitet och användbarhet.
Hantering av fel (t ex misslyckad uppladdning).
Tester riktade mot identifierade riskområden
Tester som visar följsamhet mot lagkrav på digital tillgänglighet.
Sårbarhetsanalys och eventuellt utökade säkerhetstester
Tillgängliggöra app för testning innan publicering
För att kunna distribuera appen för testning används tjänster som:
TestFlight (iOS)
Google Play Console (Android)
TestFairy (Android)
Applivery (Android)
Rutiner inför publicering
Efter att acceptanstesternas resultat värderats och beslut tagits om publicering ska appen lämnas för granskning i respektive app store. När eventuella anmärkningar hanterats och godkänts kan appen signeras för publicering.
För mer information, se Distribution av appar.
Behov av test i förvaltning
Utbudet av mobila enheter är stort och utvecklas snabbt. Det ställer krav på att kunna verifiera att appen fortfarande fungerar i dessa eller i annat fall snabbt kunna komma ut med kvalitetssäkrad uppdatering.
Det betyder att en automatiserad test som snabbt kan verifiera grundläggande funktionalitet tillsammans med en plan för manuella tester som kan upptäcka användbarhets- eller tillgänglighetsproblem är värdefull och behöver planeras och finansieras. Det gäller även planering för verifiering och hantering för att snabbt kunna publicera en ny version av appen när det är nödvändigt.
Avveckling av app
Behov av kvalitetssäkring/test vid avveckling av app kan i stort sett anses vara desamma som för webbapplikationer, men med tillägg för verifiering av att:
Inför avpublicering är informationshämtning från appen inte längre möjlig
Data som lagrats på server hanterats i enlighet med lagar och avtal
Säkerställa att användare får erforderlig information om vad som skall ske eller har skett.
Länkar
Generell information om Ineras test och kvalitetssäkring
<platshållare - Ineras teststrategi - ej publicerad ännu>
<platshållare - Avsnitt om test i nya tjänstehandboken - ej publicerad ännu>
https://inera.atlassian.net/wiki/spaces/UtvR/pages/2471364052 (Utvecklingsramverket)
Anvisning för Säkerhetstester_v1.1.pdf
Digital tillgänglighet
Mobile Accessibility: How WCAG 2.0 and Other W3C/WAI Guidelines Apply to Mobile
SIS standard
IEC 82304-1:2016 (Medicinteknisk produkt)
Testverktyg
Welcome - Appium Documentation
Sauce Labs: Cross Browser Testing, Selenium Testing & Mobile Testing
Xray - Exploratory Testing App
Nedladdning av app för test
Google Play for business | Launch & monetize your apps | Google Play Console
Sauce Mobile App Distribution (TestFairy)
https://www.applivery.com/ (Applivery)