how perform software product testing detailed process
Programvaruprodukter behöver sitt eget unika tillvägagångssätt för att testa adekvat och korrekt. Ofta behandlar team dem som någon annan programvara (dvs interna applikationer som är byggda för en viss klient eller ett team; inte tillgängligt för allmänheten; intäktsgenererande) och det är utgångspunkten för problem.
Programvarutestning kräver en anpassad teststil och strategi för att tillföra värde. Programvara Produktutveckling och näring är i sig ett komplext ekosystem och testare måste anpassa sig för att trivas.
Låt mig ta en stund för att förklara varför det är viktigt och varför jag tycker att produktutveckling är komplex, komplicerad och sammansatt, även i bästa tider.
Vad du kommer att lära dig:
- Programutvecklingsutmaningar för produktutveckling:
- Steg 1) Produktintroduktion
- Steg 2) Produkttillväxt
- Steg 3) Produktens mognad
- Steg nr 4) Produktnedgång / återgå till produkttillväxt
- Vad gör dig till en framgångsrik produkttestare?
- Rekommenderad läsning
Programutvecklingsutmaningar för produktutveckling:
Här är några av de utmaningar som programvaruutvecklingsteam står inför:
# 1)Brist på kontroll över användardemografi, enheter, miljöer, plattformar etc. : Programvaruprodukter till skillnad från programvara som byggts för specifika intressenter används inte i kontrollerade och förutsägbara situationer. Det finns många bara för många faktorer att ta hänsyn till.
#två)Dimmig produktvision : Produktbeteende och funktioner förändras för alltid och resan till mognad syns inte tydligt. Eller så växer produkten för snabbt att den går ur kontroll att team inte vet vad som händer.
# 3)Aggressiva tidslinjer : På grund av hård konkurrens på mjukvaruproduktmarknaden måste saker och ting röra sig i en rasande hastighet och team måste ligga steget före sina kamrater. Annars är de säker på att de tappar tävlingen.
# 4)Rädsla att misslyckas : Programvaruprodukter är vanligtvis innovativa. Så deras framgång är inte alltid givet. Detta är anledningen till att företag inte kan gå ut med avseende på budget, teknik, infrastruktur, etc. De måste ofta hålla tillbaka för att få en viss immunitet mot misslyckande eller till och med breakeven.
# 5)Brist på användbar feedback: Eftersom det inte finns några intressenter eller affärsanvändare eller klienter är det svårt att förstå vad slutanvändaren kanske eller inte gillar. Företag spelar ständigt ett gissningsspel och har ofta svårt att överbrygga klyftan mellan vad de vill ha för programvaran och vad kunden vill ha.
Dessa utmaningar påverkar alla områden av produktutveckling, marknadsföring och näring - Och de påverkar i sig också produkttester.
För att komma vidare i spelet måste denna typ av test ta hänsyn till fem viktiga punkter:
- Utvecklingshastighet och utsläpp
- Produktens korta och långsiktiga produktmål
- Konkurrensens omfattning och karaktär
- Målgrupper och deras miljöer
- Krav - Funktionell, prestanda, säkerhet, användbarhet, konfiguration etc.
Innan vi går in i mer detaljer, ska vi förstå produktens livscykel (Detta är en generisk produktlivscykel och inte specifik för programvaruprodukter men programvara följer ett liknande mönster):
En bra produktteststrategi / strategi bör ta hänsyn till det aktuella stadiet av produkten i dess livscykel.
Läs också => Hur man skriver ett bra teststrategidokument
Exempel: Ett företag XYZs produkt är ett program för defektspårning som heter 'TrackFast'. Det är en ny produkt och den första versionen kommer att lanseras som en moln- och lokal lösning. TrackFast fungerar som alla andra defekthanteringssystem och är byggt för både mobil- och webbåtkomst. För närvarande finns det 2 till 4 veckors sprints där produkten skapas i delar. Du är med i testteamet och testar 'TrackFast' innan det träffar sina kunder. Testningen innefattar kontroll av funktionalitet, prestanda och säkerhet.
testplan och skillnad i teststrategi
Sammanfattningsvis är det parametrarna du arbetar med. Eller om du föredrar är detta ditt sammanhang
Låt oss se hur man testar i varje steg. Detta är produkttest process, metod eller livscykel i varje steg.
Steg 1) Produktintroduktion
Eftersom detta är första gången TrackFast skulle ut på marknaden är tanken att göra ett bra första intryck. Så lämna ingen sten orörd. Testa allt och från alla vinklar. Lägg dessutom grunden för framtida testning.
En bra teststrategi vid denna tidpunkt bör innehålla följande:
- Tester som validerar kortfristiga mål för TrackFast. ”Vad behöver den för att skickas korrekt” bör ligga i spetsen för testinsatsen. Skapa Test från slut till slut (frontend, middleware och backend) för noggrann testning av varje funktion
- Tester som jämför TrackFast med tävlingen (helst detta är produktägarens jobb, men som testare kan vi lägga till våra två cent. Det här steget är också lättare om programvaran redan har några kamrater. Till exempel: Det är lätt att jämföra TrackFast med Bugzilla eller JIRA eller andra äldre system . Men låt oss säga att jag skapar en app som gör något ovanligt som att kunna förutsäga när en baby är hungrig eller cranky :), det kan vara svårt att hitta en applikation som du kan använda som baslinje)
- Plattform, webbläsare och enhet kompatibilitetstester
- Test för enkel installation , ställa in och komma igång
- Test för prestanda, säkerhet och användbarhet
- Integrationstester om det gränssnitt med andra system. Ett enkelt exempel på integration är att spårningssystem för defekter ofta interagerar med e-postklienter för att skicka meddelanden
- Planera för regression - Det är en bra idé att flagga eller markera kritiska tester som du tror kommer att vara en del av framtida regressionscykler och tänka på att automatisera dem för framtida utgåvor
- Planera för kända problem (kommer du att lägga till dem i eftersläpningen eller hantera dem som CR, etc.)
- Flexibilitet att förändras när produkten går vidare till nästa livscykelstadium.
Ibland kan det dröja länge innan produkten släcks, så använd hela tiden du behöver göra ett så noggrant jobb som möjligt.
I det här steget, även om det finns en bit av produkten redo i slutet av 2-4 veckors sprints, resulterar oftast inte varje sprint i levererad kod. Tänk därför aldrig på den senaste sprinttestningen som 'gjort och levererat'. Upprepa kritiska tester för varje sprint tills det släpps. För varje sprint, testa hela produkten du har fram till den punkten.
Steg 2) Produkttillväxt
Efter den första projektintroduktionen, om allt går bra, förvänta dig ett tillströmning av aktivitet eftersom produkttillväxt är en snabb körfält. Du simmar nu tillsammans med de stora hajarna och såvida du inte fortsätter blir du sliten.
Här blir versionerna kortare, förbättringarna av mjukvaran blir fler och omfattningen av regression blir nästan omöjlig.
Produktteststrategin bör fungera i takt med att programvaruutvecklingen fortsätter och bör inte bli en flaskhals.
Dessa kan hjälpa:
- Tänk på projektets långsiktiga mål. Det handlar inte om att få-det-över-med nu. Det handlar om att leva med funktionerna och trivas med dem.
- Testa tidigt- Tänk på TDD eller BDD istället för att skjuta upp testet till slutet med nya krav
- Automatisera regression och stärka den - Skapa en automatiserad regressionssvit på plats så att du inte sitter kvar med oprövade landminor i ditt system
- Om ditt företag / produktägare vill engagera sig i testning, överväg ett affärsspråkbaserat automatiseringsverktyg som gurka.
- Behåll användbarhet och webbplatsdesign centralt för din testning. Eftersom ju fler funktioner vi lägger till, desto renare ska webbplatsen se ut
- Utför prestanda- och säkerhetstester när en större release har hänt eller om arkitekturen ändras väsentligt. (Ny server har tagits in osv.) De flesta mjukvarusystem behöver inte detta med varje version.
- Håll kontakten med tävlingen och känn produktvisionen
- Anpassa parningstestning , för omedelbar feedback och fixning. Inkludera produktägaren när det är möjligt
- Planera för förändringar och kända problem
- Försök att få tag på kundfeedbacken och kontrollera om de är kan spåras som förbättringsförslag för att hålla tillväxten konstant. (återigen är detta inte det primära ansvaret för QA-teamet, men alla räknar)
Steg 3) Produktens mognad
Grattis till att din produkt har kommit så långt. Vid den här tiden ändras inte funktionerna så ofta. Produktgruppen kommer att vara mer fokuserad på att få fler affärer eller deras marknadsföringsinsatser. Produktutveckling och testning behöver dock inte och slutar ofta inte.
Därför kan testteamet:
- Arbeta med att mogna din teststrategi. Vid den här tiden måste dina regressionssviter, testdesignmetoder och testhanteringsmetoder fungera som väloljade maskiner.
- Fokusera på de finare detaljerna. För att produkten totalt sett fungerar och går bra, men som de säger - ' Gud är i detaljerna ' - hitta även de minsta av problemen som kan förbättra systemets kvalitet
- Överväg kundfeedback
- Testa prestanda och säkerhet regelbundet
- Ta hänsyn till de nya enheterna, plattformarna och webbläsarna som kan ha kommit på marknaden senast du testade
- Testa användarhandbok och FAQ-sidor eftersom du nu har tid och du har råd att göra det.
- Experimentera med nya produkttestverktyg, tjänster eller en process för nu kan du.
- Testa installationsprocessen med varje version, hur liten det än är och få statistik om hur lätt eller svårt det är för slutanvändaren.
Oavsett vad du gör, bli inte självbelåten.
Steg nr 4) Produktnedgång / återgå till produkttillväxt
Produktägare och företag är smarta idag och vet mycket väl att de inte kan hålla sin produkt desamma och förväntar sig att användarna ska vara lojala. Saker går för snabbt och det gör också produkter.
Så TrackFast kan inte luta sig tillbaka och koppla av. Om den behöver ha en fortsatt marknadsnärvaro och förbli ledande måste den utvecklas. Gilla det eller hata det, Facebook började som ett enkelt socialt nätverk för att ansluta människor och det är en stor programvaruplattform i sig som integreras med en miljon andra saker och håller sig uppdaterad.
TrackFast måste också utvecklas. Efter att ha bevisat att det är ett tillförlitligt och effektivt felspårningssystem måste det utvecklas eller så kommer det att minska. Så beslutar företaget XYZ att förbättra TrackFast genom att göra det till ett allmänt biljettsystem som kan användas för att spåra incidenter eller ärenden av andra företag än IT / testteam (något som JIRA) och inte bara för fel i programvaruutvecklingsprocessen .
hur man skapar ett falskt e-postmeddelande
Hjulet har gjort en hel sväng och du befinner dig att behandla systemet som ett helt nytt och följa strategin som vi diskuterade i avsnittet Produktintroduktion. Först nu är du mer erfaren och bekant med borren. Men kom ihåg, med varje ny sväng kommer en ny utmaning. Så håll dig skarp :)
Vad gör dig till en framgångsrik produkttestare?
- Produkttestare måste ha en angelägen affärsförståelse, förståelse för utvecklingsmodeller för snabb leverans och bör vara essetestare som inte är rädda för att experimentera med verktyg och själva bli lite kodare om det behövs. Dessa saker kan ha en positiv inverkan på alla typer av tester, men de är en absolut nödvändighet i denna typ av tester.
- En annan viktig egenskap är att en produkttestaren måste tro på produkten och vill verkligen att det ska lyckas. När jag som testare tycker att programvaran är total sopor finns det lite hopp om att jag kommer att göra något för att göra det bättre.
- Dela produktens / företagets vision . Om du inte vet vart produkten ska och hur den ska utvecklas kommer testningen att vara superbegränsad.
- Tvärfunktionella färdigheter är fördelaktiga - Lär dig att testa DB, hur man tar prestandamätvärden, hur man aktiverar säkerhetscertifikat, hur man distribuerar etc. Var nyfiken och utforska .
- Sätt inga gränser - tro inte att det inte är ditt jobb att utvärdera användarhandboken eller kontrollera vanliga frågor och en teknisk författare bör ta hand om den. Tja, de borde och de kommer att göra det. Men när du ser på det som en insider som någon som känner produkten inifrån och ut är din feedback super användbar.
- Sök feedback från slutanvändare. Nästa stora uppsättning människor som testar efter dig är användare i realtid. Vet och förstå vilken typ av problem de står inför. Detta hjälper dig att förbättra din testdesign så nästa gång du vet vad du ska göra för att undvika dessa problem.
- Arbeta snabbt och vara beslutsfattare
- Undvik teknisk skuld . I en snabb utvecklings- och testsituation är det enkelt att testa utforskande uteslutande och förlora referensramen för framtida utgåvor. Låt inte detta hända. Underhåll skelettdokumentation så att du kan spåra, spåra och mäta
Den största skillnaden mellan testprogramvara byggd som en tjänst och programvara byggd som en produkt är att - i den förra, när teststrategin har nåtts, används den för all efterföljande testning.
För en produkt måste teststrategin dock ändras beroende på det aktuella livscykelstadiet som produkten befinner sig i och förändringarna i marknadsdynamiken (nya enheter, nya webbläsare etc.). Produktens teststrategi måste vara mycket mer flexibel för att förändras.
Om författaren: Denna artikel publiceras av STH-teammedlem Swati S.
Vi hoppas att den här artikeln har varit till nytta. Skicka gärna dina kommentarer, frågor och feedback nedan.
Rekommenderad läsning
- Bästa verktyg för testning av programvara 2021 (QA Test Automation Tools)
- Programvarutestningskurs: Vilket programvarutestinstitut ska jag gå med?
- Programvarutestning QA-assistentjobb
- Välja programvarutestning som din karriär
- Programvarutestning Tekniskt innehåll Writer Freelancer Jobb
- Vad är uthållighetstestning vid programvarutestning (exempel)
- Några intressanta programtestintervjufrågor
- Programtestkursfeedback och recensioner