Inom informationsteknologi, särskilt i samband med agil utveckling, sker en snabb och konstant förändring. För att hålla jämna steg med denna utveckling blir framväxande teknologier, som artificiell intelligens (AI), allt mer avgörande. AI inte bara påskyndar tekniska framsteg, utan erbjuder också viktigt stöd under denna omvälvande period.
AI finns i många olika former, från specialiserade till mer allmänna verktyg. Specialiserad AI kan autonomt generera kod utan att kräva djupgående programmeringskunskaper, samt sammanfatta webbsidor baserat på URL:er. Å andra sidan finns det allmänna AI-verktyg som kan assistera IT-specialister på flera nivåer genom att effektivisera kodutveckling, förtydliga specifikationer och till och med stödja skapandet av testfall – vilket är huvudfokus för denna artikel.
Testning är en avgörande del av hela utvecklingscykeln för ett IT-projekt, oavsett metodologi (t.ex. V-cykel eller agil). Den hjälper till att identifiera och åtgärda fel, både stora och små, redan i ett tidigt skede. Genom att hitta och åtgärda potentiella buggar innan produkten levereras säkerställs dess pålitlighet i användarnas ögon.
Trots testningens centrala roll, får den ofta mindre uppmärksamhet i projektet, där avsatt tid är begränsad jämfört med andra faser. Denna tidsbrist kan påverka testningens grundlighet, vilket gör det ännu viktigare att optimera användningen av den tillgängliga tiden för testaktiviteter.
Integrationen av AI i testprocessen kan hjälpa till att effektivisera QA-teamets arbete. AI gör det möjligt att maximera den tillgängliga tiden genom att generera testfall på olika språk, Gherkin och engelska. Även om AI:s svar inte alltid är helt anpassade till testkraven, kan de ändå minska arbetsbördan och spara tid genom att ge ett första utkast på testfall.
Ett exempel på ett kraftfullt AI-verktyg inom detta område är Gemini, utvecklat av Google och tillgängligt via https://gemini.google.com/app med ett enkelt Gmail-konto. Gemini utmärker sig genom sin förmåga att tolka instruktioner på ett naturligt språk och generera testfall baserat på dessa.
Verktyget är användarvänligt och erbjuder ett intuitivt gränssnitt där användare kan skriva in förfrågningar, specifikationer eller användarhistorier. Det går även att använda röstdiktation för att mata in information. Svaren som ges kan variera beroende på hur noggrant frågan är formulerad. Om svaret inte är tillräckligt, kan användaren få tre alternativa förslag från AI:n. Dessutom kan man begära alternativa formuleringar, exempelvis mer detaljerade eller professionella versioner. Dessa svar kan enkelt kopieras till urklipp och integreras i testverktyg.
Gemini är användarvänligt och gör det möjligt att spara en historik över sina förfrågningar. Det är dock viktigt att vara uppmärksam på att AI:s svar ibland kan vara ofullständiga eller felaktiga, vilket kräver viss noggrannhet och kontroll från användarens sida.
Här är ett exempel på ett Gherkin-testfall i Gemini (på engleska):
Efter att ha klickat på sökknappen visas sökresultatet enligt följande:
AI:n ger flera tillgängliga resultat på förfrågan:
Svaret ger mer eller mindre detaljerade testfall, och testpersonen kan lägga till eller ta bort dem baserat på den önskade detaljnivån.
Trots att AI har gjort stora framsteg när det gäller automatiserad testfallsskrivning, kan den ännu inte helt ersätta arbetet hos en mänsklig testare. Att skriva testfall handlar inte bara om att översätta specifikationer till instruktioner – det krävs också en djup förståelse för projektets kontext och specifika krav. Mänskliga testare bidrar med värdefull expertis genom att identifiera relevanta testsituationer, upptäcka potentiella brister och validera testlogiken.
AI kan definitivt underlätta och snabba upp processen genom att ge initiala förslag och automatisera repetitiva uppgifter. Men manuellt skrivande är fortfarande avgörande för att säkerställa att testfallen är både relevanta och av hög kvalitet. Dessutom bidrar mänskliga testare med omdöme och kreativitet som är svåra att återskapa med enbart algoritmer.
Sammanfattningsvis kan AI vara ett värdefullt verktyg för att påbörja skapandet av testfall, vilket förenklar och påskyndar processen. Men mänsklig inblandning och manuell förtydligande av krav är ofta nödvändiga för att säkerställa att de genererade testen är både relevanta och effektiva. AI, som blir allt mer närvarande i vårt samhälle, kan göra våra liv enklare på många sätt, men som med alla verktyg måste användningen vara genomtänkt för att verkligen kunna utnyttja dess fulla potential.