when opt automation testing
Ska vi överväga automatiseringstestning för ett projekt? När ska vi testa automatisering?
Testning utförs för att tillhandahålla leveranser av god kvalitet till slutanvändaren. Testfas är en av de viktigaste aspekterna av STLC .
Varje företag fokuserar mer på programvarutestning eftersom kvaliteten ger optimal kundnöjdhet, men många av dem kämpar fortfarande med att välja vilken typ av test som ska utföras, antingen med automatiserad testning eller manuell testning.
Den här artikeln hjälper läsaren att förstå vad som är Automation Testing, när man ska gå för det, och viktigast av allt, när man inte ska gå för det. Lär dig också optimalt utnyttjande av Automationsverktyg för testning .
Oavsett vilket arbete som utförs, bör det utföras effektivt och måste också vara kostnadseffektivt. Dessutom bör det vara vettigt så att kunden känner sig nöjd med sina leveranser.
Vad du kommer att lära dig:
- Programvarutestning och kostnadsfördelar
- Intelligens bakom programvarutestning
- Automation - Är det verkligen viktigt?
- Varför automatisering?
- Riskfaktor
- När ska automatisering inte föredras?
- Kostnad mot avkastning för automatisering
- Var kan Automation göra REDUKTION med minimal kostnad?
- Slutsats
- Rekommenderad läsning
Programvarutestning och kostnadsfördelar
Programvarutestningen utförs normalt av en programvarutestare. Skillnaden mellan en testare och en riktig användare är att den senare bara känner till en delanvändning av programvaran som används för deras verksamhet eller för deras uppgifter och inte kommer att känna programvaran helt. Å andra sidan kommer en testare att vara medveten om alla tekniska och funktionella krav för programvaran. Baserat på kraven från klienten måste testplaner och testfall utarbetas.
En testplan är inget annat än en detaljerad plan för hur testprocessen ska genomföras. Detta kommer att ha fullständiga detaljer om antalet resurser och källor som är involverade i testningen, vad man ska göra och när man ska göra det, vad som inte kommer att göras, och i vilken miljö det kommer att utföras etc.
Testfall bör förberedas efter en klar förståelse av den funktionella och tekniska aspekten av programvaran. Testaren måste ha en stor observationsförmåga och fullständig kunskap om programvaran.
Dessutom spelar kostnad en effektiv roll här. Kunder föredrar att acceptera programvara med maximal kvalitet till en minimal kostnad. När vi går för manuell testning är processen mer tråkig och tidskrävande eftersom det görs manuellt av en testare.
Till exempel , när vi behöver ett antal testare utför regressionstestning kan det ta nästan 50 timmar att utföra alla testfall. Och baserat på tillgången på resurser kommer testfallet att köras. Men med mindre tid för automatiserad testning utförs optimalt resursutnyttjande tillsammans med maximal täckning av testfall jämfört med manuell testning.
Intelligens bakom programvarutestning
Det är mycket viktigt för alla organisationer att veta när testprocessen ska startas och när den ska avslutas. Vi ska veta när vi ska börja testa eftersom det är värdelöst att börja testa när utvecklingsfasen är klar och när de kriterier som krävs inte uppfylls. Det är alltid en bästa praxis att börja med testdesignfasen medan utvecklingen pågår.
Nedan följer kriterierna för in- och utgång av programvarutestning:
Inträdeskriterier
När designdokumentet har undertecknats måste testplanerna utarbetas i planeringsfasen. En testplan spelar en viktig roll. Den maskinvara som krävs måste installeras och konfigureras ordentligt och maskinvarans funktionalitet måste kontrolleras. Funktionskraven måste vara tydliga och godkända. Den utvecklade koden måste enhetstestas och undertecknas av utvecklarna.
Testfall och testdata måste utarbetas och godkännas. Testdata och tillämpning bör vara tillgängliga. Testaren måste ha betydande och tillräcklig kunskap om applikationen. Resurserna bör vara välutbildade om verktyg och måste klargöras med alla nödvändiga funktioner.
Testaren måste finnas tillgänglig. När något av kriterierna inte uppnås hålls inträdeskriterierna för testning nere.
(Notera: Klicka på valfri bild för en förstorad vy)
Utgångskriterier
Endast när minst 95% av de obligatoriska testfallet är låsta med ett 'godkänt' resultat kan vi avsluta testfasen för produkten. Det är dock inte så lätt att avgöra när testning av programvara kan stoppas eller om det fortfarande behöver köras. Och denna typ av situation uppstår ofta också.
De viktigaste kriterierna ges nedan:
- När alla buggar är fixade.
- När deadline har uppnåtts.
- När budgeten är slut eller tömd.
- När alla testfall är klara.
- När avtalet undertecknas.
- När en viss procentandel av testningen är klar.
- När Alfa och betatestning hamnar.
Utgångskriterierna kan härledas enbart baserat på faktorer som risk, kostnad etc. När testning av det huvudsakliga funktionella kravet har uppnåtts kommer testningen att stoppas vanligtvis och de letar aldrig efter mindre buggar, vilket kommer att skapa problem i senare perioder.
Exempel: Programvaran ABC är i en designfas. Utvecklingen och testkonstruktionen sker i allmänhet samtidigt. Efter att designen har frusits startar utvecklingen av programvaran. Slutförandet av utvecklingen av programvaran, enligt överenskommelse, indikerar inmatningskriterier. Leveranser här kommer från utvecklingsteamet. Den innehåller utgåvanoteringar och kända problem.
Efter några iterationer av testning, när inga större / blockerare / showproppar väntar på upplösning och 95% av testningen har resulterat i ett pass, kallas det som utgångskriterier.
Automation - Är det verkligen viktigt?
När vi behöver bestämma om vi behöver Automatiserad testteknik eller inte, frågan om tillgängliga resurser uppstår här. Anledningarna till att vi behöver automatisera är att kontrollera om dataflödet och den utvecklade funktionaliteten fungerar enligt förväntningarna utan manuellt ingripande eller inte. Den används främst på platser där programvaran kommer att ha förändringar i form av flera versioner / cykler etc.
hur man öppnar en swf-fil på krom
I slutet av utvecklingen av varje cykel kommer testningen av den nu tillagda funktionaliteten att göras. Dessutom kommer testning av den gamla funktionaliteten att göras för att säkerställa att de gamla funktionerna inte bryts. Detta är den största delen som har utrymme för automatisering.
Vid verifiering av koddriven logik och GUI-kraven kan man välja Automatiskt test, förutsatt att riskfaktorn är hög.
Exempel: För programvaran ABC finns det ofta uppgraderingar, uppdateringar efterfrågas av klienten och tillhandahålls av utvecklarna. Som en del av testningen görs regression för programvaran som redan finns och körs i produktion. Oavsett antal släpp, uppgraderingar och uppdateringar är den aktuella versionen giltig.
Anta att det krävs tio dagars manuella ansträngningar för täckning av regressionstestning, och då måste största försiktighet vidtas för att automatisera dem. Det kan spara minst 60% ansträngning och 10 * 8 = 80 timmars manuellt arbete.
Automatiseringen kan slutföra 80/24 = endast 3,33 dagar. Detta sparar ungefär 6,67.
Varför automatisering?
Automation kan endast väljas när:
- Applikationen har ett mycket stort område med en hög grad av investeringsinsats i regression.
- Optimering av kostnader inträffade på grund av manuella fel.
- Programvaran har flera versioner och versioner.
- Det är kostnadseffektivt på lång sikt.
- Riskfaktorn är högre för ett bredare omfattning av testutförande.
- Kostnadssiffror och matematiska beräkningar ingår i programvarans funktionalitet.
- Det är en större ökning av körningstempoet, effektivitet tillsammans med mjukvarukvaliteten.
- Det finns en mindre vändtid, även för mjukvarutestning med hög risk.
Riskfaktor
Riskfaktor blir övervägande vanligt i verksamheten där det finns många beroenden av tidsfaktorn. Programvaran som fungerar baserat på transaktionssystemen och som fungerar över flera applikationer kommer att kräva att programvaran fungerar perfekt enligt programvarudesignen. I det här fallet finns det många risker med att registrera rätt funktionsbeteende.
Här kommer automatisering att vara till stor hjälp för att utföra de funktionella transaktionerna i bättre takt enligt programvarumekanismen.
Till exempel , när det gäller en Forex-marknadsindikator, är tidsfaktorn mycket viktig och kritisk. Förändringarna i lager och råvaror sker med avseende på tid, ibland mindre än sekunder. Här kan automatisering hjälpa till att testa sådan programvara med hög risk.
Exempel: Programvaran ABC har flera uppdateringar och uppgraderingar. För att spara manuella ansträngningar och få ner omgångstiden för testfasen kan basversionen eller de gamla funktionerna automatiseras. Detta kan bara gälla när basfunktionerna förblir oförändrade.
Fördelen med automatisering är att de kan köras utan manuellt ingripande. Även detta kan utföras parallellt med att testa nyare funktionalitet. Därför sparar automatisering mycket arbete och mycket tid.
När ska automatisering inte föredras?
Det finns en fråga bland flera organisationer som är - Varför 100% automatisering är inte möjligt?
Svaret från experter är LÅT BLI eftersom duktiga användare måste utföra automatiserad testning och de måste också vara välutbildade. Automatisering kan inte genomföras under den inledande fasen av kriterierna och kraven i ansökningarna kommer inte att vara tydliga.
Vanligtvis föredras automatisering från den andra iterationen av programvaruversion. Användargränssnittet kan ändras, vilket är dyrare och skriptunderhållet är också dyrare. När kostnaden för automatiseringsverktyget överstiger budgeten för projektet kan vi säga nej.
Exempel: Programvara XYZ är en typ av e-handelswebbplats där kundkraven inte fryser och fortsätter att förändras när det krävs av klienterna.
I det här fallet kan automatisering inte hjälpa regressionen. Detta beror på att de gamla funktionerna som inte är giltiga inte ska testas och därför måste de göras manuellt. Till exempel måste en klient ha alla listrutor i basprogramvaran för att kunna ändras som listrutor.
Kostnad mot avkastning för automatisering
Avkastningen är mycket låg när vi börjar automatisera eftersom automatisering är dyrt för första gången. Avkastningen fortsätter att öka eftersom det manuella arbetet med att testa programvaran minskar från iterationerna av den andra utgåvan. Vi måste vara medvetna om det förväntade resultatet av ett testfall före Automation.
Tänk på att utformningen av testfallet är viktigare när du väljer Automation och vilket verktyg som helst för att säkerställa att det inte ökar kostnaden.
Var kan Automation göra REDUKTION med minimal kostnad?
Även automatiseringskostnader eftersom det nödvändiga testverktyget måste köpas. Resurserna måste utbildas med det specifika verktyget. Det valda verktyget måste vara möjligt för att testa alla områden i programvaran.
Så valet av verktyg bör göras noggrant av experterna inom Automation-testning.
Exempel: Tänk på produkten XYZ som handlar om försäkring. För att minska kostnadsfaktorn använde företaget endast manuell testning, men när det gäller försäkring är riskfaktorn hög och kan kosta företaget pengar när någon av premieberäkningarna går fel. Hela förlusten kommer antingen för ledningen eller till slutanvändaren. Slutanvändaren kommer inte att bära förlust medan företaget måste.
När det beräknade premiebeloppet inte stämmer överens med det ursprungliga premiet (dvs) när det finns en skillnad i beräkningen av frontend och backend-premium, uppstår ett stort problem mellan kunden och produktsäljaren. Det kan innehålla många moduler som bilar, hem och andra också.
När något går fel är det en total förlust. Skillnaden i beräkningen kan vara vettig för testaren och kan höja buggar. I detta projekt manuell testning kan göras för det grundläggande användargränssnittet, såsom verifiering av TIN-nummer, socialt ID och annan information relaterad till användarportföljen och kan därmed testas manuellt där riskfaktorn är låg. M eller företaget skulle tjäna pengar, desto mer föredrar de automatisering för att testa sin programvara.
Slutsats
Både automatisering och manuell testning har också fördelar och nackdelar. Först när vi är klara med begreppen och kraven kommer vi att kunna välja vilken typ av test som ska utföras.
Inget projekt kan testas med manuell testning eller automatiserad testning ensam. Det beror på design, plattform och teknik som programvaran har utvecklats med. Så när man fattar ett beslut måste man vara försiktig med att välja testmetod och använda råd från experter.
I artikeln ovan kanske vi har missat några faktorer, dela de faktorer som du tycker är viktiga när du väljer automatisering eller till och med verktyg för automatisering.
Dela gärna dina kommentarer / förslag om den här artikeln.
Rekommenderad läsning
- Bästa verktyg för testning av programvara 2021 (QA Test Automation Tools)
- Manuella och automatiseringstestutmaningar
- Topp 10+ bästa testböcker för programvara (testböcker för manuell och automatisering)
- Programvarutestning QA-assistentjobb
- 11 bästa automatiseringsverktyg för testning av Android-applikationer (Android-apptestverktyg)
- Är du expert på manuell eller automatiseringstestning? Arbeta deltid för oss!
- Programvarutestningskurs: Vilket programvarutestinstitut ska jag gå med?
- Välja programvarutestning som din karriär