En vanlig fråga från våra elever är hur man testar mobilappar? I denna handledning tillhandahåller vi exempel på testscenarier / testfall för testning av en mobilapplikation.
Du kan utföra några eller alla testfall baserat på dina mobila testkrav. Testfall är organiserade baserat på mobila testtyper.
- Funktionella testtestfall
- Prestandatester
- Säkerhetstest Testfall
- Användbarhetstestning Testfall
- Kompatibilitetstest Testfall
- Testfall i återställbarhetstest
- Viktig checklista
Funktionell testning av mobilapplikation
Den funktionstestning av Mobile Application är en process för att testa funktionerna i mobila applikationer som användarinteraktioner samt testa transaktioner som användarna kan utföra. Huvudsyftet med funktionstestning för mobilapplikationer är att säkerställa kvaliteten, uppfylla de angivna förväntningarna, minska risken eller felen och kundnöjdheten.
De olika faktorer som är relevanta vid funktionell testning är
- Typ av applikation baserat på affärsfunktionella användningar (bank, spel, socialt eller företag)
- Målgruppstyp (konsument, företag, utbildning)
- Distributionskanal som används för att sprida applikationen (t.ex. Apple App Store, Google play, direktdistribution)
De mest grundläggande testscenarierna i funktionstestningen kan betraktas som:
- För att verifiera om alla obligatoriska obligatoriska fält fungerar som krävs.
- För att bekräfta att de obligatoriska fälten visas på skärmen på ett distinkt sätt än de icke-obligatoriska fälten.
- För att validera om applikationen fungerar enligt kraven när applikationen startar / stoppar.
- För att validera om applikationen går i minimerat läge när det kommer ett inkommande telefonsamtal. För att validera detsamma måste vi använda en andra telefon för att ringa enheten.
- För att verifiera om telefonen kan lagra, bearbeta och ta emot SMS när appen körs. För att validera detsamma måste vi använda en andra telefon för att skicka sms till den enhet som testas och där applikationen som testas för närvarande körs.
- För att verifiera att enheten kan utföra nödvändiga multitasking-krav när det är nödvändigt att göra det.
- För att bekräfta att applikationen tillåter nödvändiga sociala nätverksalternativ som delning, postning och navigering etc.
- För att bekräfta att applikationen stöder alla betalningsgateway-transaktioner som Visa, Mastercard, Paypal osv. Som krävs av programmet.
- För att bekräfta att sidbläddringsscenarier aktiveras i applikationen efter behov.
- För att bekräfta att navigeringen mellan relevanta moduler i applikationen är enligt kravet.
- För att bekräfta att trunkeringsfelen är helt överkomliga.
- För att bekräfta att användaren får ett lämpligt felmeddelande som ”Nätverksfel. Försök efter en tid ”när det finns något nätverksfel.
- För att bekräfta att det installerade programmet gör det möjligt för andra applikationer att fungera tillfredsställande och det äter inte in i de andra programmens minne.
- För att verifiera att applikationen återupptas vid den senaste operationen i händelse av en hård omstart eller systemkrasch.
- För att validera om installationen av applikationen kan göras smidigt förutsatt att användaren har nödvändiga resurser och det inte leder till några betydande fel.
- För att bekräfta att applikationen utför automatisk startfunktion enligt kraven.
- För att validera om applikationen presterar enligt kravet i alla versioner av Mobile som är 2g, 3g och 4g.
- Att utföra regressionstest för att avslöja nya programvarufel i befintliga områden i ett system efter att ändringar har gjorts i dem. Kör även tidigare utförda tester för att fastställa att programbeteendet inte har förändrats på grund av ändringarna.
- För att validera om applikationen tillhandahåller en tillgänglig användarhandbok för de som inte känner till appen
Prestandatestning Testfall
Denna typ av test är grundläggande mål att säkerställa att applikationen fungerar acceptabelt under vissa prestandakrav, såsom åtkomst av ett stort antal användare eller borttagning av en nyckelinfrastrukturdel som en databasserver.
De allmänna testscenarierna för prestandatestning i en mobilapplikation är:
- För att avgöra om applikationen fungerar enligt kraven under olika belastningsförhållanden.
- För att avgöra om den aktuella nätverkstäckningen kan stödja applikationen vid toppnivåer, genomsnittliga och minimala användarnivåer.
- För att avgöra om den befintliga konfigurationen av klientserverns konfiguration ger den optimala prestandanivån.
- Att identifiera de olika flaskhalsarna i applikationer och infrastrukturer som förhindrar att applikationen fungerar på önskade acceptansnivåer.
- För att validera om svarstiden för applikationen är enligt kraven.
- Att utvärdera produkt och / eller hårdvara för att avgöra om den klarar av projicerade lastvolymer.
- För att utvärdera om batteriets livslängd kan stödja applikationen att prestera under projicerade lastvolymer.
- För att validera applikationsprestanda när nätverket ändras till WIFI från 2G / 3G eller vice versa.
- För att validera var och en av de nödvändiga är CPU-cykeln optimering
- För att bekräfta att batteriförbrukningen, minnesläckage, resurser som GPS, kamerans prestanda ligger inom de nödvändiga riktlinjerna.
- För att validera applikationens livslängd när användarbelastningen är rigorös.
- För att validera nätverksprestandan medan du rör dig med enheten.
- För att validera applikationsprestandan när endast intermittenta faser av anslutning krävs.
Säkerhetstest Testfall
Det grundläggande målet med säkerhetstestning är att säkerställa att applikationens säkerhetskrav för data och nätverk uppfylls enligt riktlinjerna.
Följande är de viktigaste områdena för att kontrollera säkerheten för mobilapplikationer.
- För att bekräfta att applikationen kan motstå alla brutala kraftattacker som är en automatiserad process av försök och fel som används för att gissa en persons användarnamn, lösenord eller kreditkortsnummer.
- För att validera om en applikation inte tillåter en angripare att komma åt känsligt innehåll eller funktionalitet utan korrekt autentisering.
- För att bekräfta att applikationen har ett starkt lösenordsskyddssystem och det tillåter inte en angripare att få, ändra eller återställa en annan användares lösenord.
- För att bekräfta att ansökan inte drabbas av otillräcklig utgång av sessionen.
- Att identifiera de dynamiska beroenden och vidta åtgärder för att förhindra att angripare får åtkomst till dessa sårbarheter.
- För att förhindra SQL-injektionsrelaterade attacker.
- För att identifiera och återhämta sig från alla ohanterade kodscenarier.
- För att säkerställa om certifikaten är validerade implementerar applikationen Certificate Pinning eller inte.
- För att skydda applikationen och nätverket mot förnekande av tjänsteattacker.
- Att analysera datalagring och datavalideringskrav.
- För att möjliggöra sessionshantering för att förhindra obehöriga användare att få åtkomst till oönskad information.
- För att kontrollera om någon kryptografikod är trasig och se till att den repareras.
- För att validera om implementeringen av affärslogiken är säker och inte sårbar för någon attack utifrån.
- För att analysera filsysteminteraktioner, bestäm eventuell sårbarhet och korrigera dessa problem.
- För att validera protokollhanterarna, till exempel för att försöka konfigurera om standardlandningssidan för applikationen med en skadlig iframe.
- För att skydda mot skadliga klientinjektioner.
- För att skydda mot skadliga runtime-injektioner.
- Att undersöka cachning av filer och förhindra skadliga möjligheter från samma.
- För att förhindra osäker datalagring i applikationernas tangentbordscache.
- För att undersöka kakor och förhindra skadliga handlingar från kakorna.
- Att tillhandahålla regelbundna revisioner för dataskyddsanalys.
- Undersök anpassade filer och förhindra skadliga handlingar från de skräddarsydda filerna.
- För att förhindra buffertöverflöden och minneskorruptionsfall.
- Att analysera olika dataströmmar och förhindra eventuella sårbarheter från dessa.
Användbarhetstestning Testfall
Användbarhetstestprocessen för mobilapplikationen utförs för att ha en snabb och enkel stegapplikation med mindre funktionalitet än en långsam och svår applikation med många funktioner. Huvudmålet är att se till att vi får ett lättanvänt, intuitivt och liknande branschaccepterade gränssnitt som används i stor utsträckning.
- För att säkerställa att knapparna ska ha önskad storlek och vara lämpliga för stora fingrar.
- För att säkerställa att knapparna placeras i samma del av skärmen för att undvika förvirring för slutanvändarna.
- För att säkerställa att ikonerna är naturliga och överensstämmer med applikationen.
- För att säkerställa att knapparna, som har samma funktion, också ska ha samma färg.
- För att säkerställa att valideringen för avlyssnings- och in- och utzoomningsfaciliteterna bör aktiveras.
- För att säkerställa att tangentbordets ingång kan minimeras på ett lämpligt sätt.
- För att säkerställa att applikationen tillhandahåller en metod för att gå tillbaka eller ångra en åtgärd, vid beröring av fel objekt, inom en acceptabel varaktighet.
- För att säkerställa att de sammanhangsberoende menyerna inte överbelastas eftersom de måste användas snabbt.
- För att säkerställa att texten hålls enkel och tydlig för att vara synlig för användarna.
- För att säkerställa att de korta meningarna och styckena är läsbara för slutanvändarna.
- För att säkerställa att teckenstorleken är tillräckligt stor för att vara läsbar och inte för stor eller för liten.
- Att validera applikationen uppmanar användaren när användaren börjar ladda ner en stor mängd data som kanske inte bidrar till applikationens prestanda.
- För att bekräfta att stängningen av applikationen utförs från olika tillstånd och verifiera om den öppnas igen i samma tillstånd.
- För att säkerställa att alla strängar omvandlas till lämpliga språk när det finns en språköversättningsanläggning.
- För att säkerställa att applikationsartiklarna alltid synkroniseras enligt användarens åtgärder.
- För att säkerställa att slutanvändaren förses med en användarmanual som hjälper slutanvändaren att förstå och hantera applikationen som kanske inte är bekant med applikationens åtgärder
Användbarhetstester utförs normalt av manuella användare eftersom endast människor kan förstå de andra användarnas känslighet och komfort.
Kompatibilitetstest Testfall
Kompatibilitetstestning på mobila enheter utförs för att säkerställa att eftersom mobila enheter har olika storlek, upplösning, skärm, version och hårdvara så bör applikationen testas på alla enheter för att säkerställa att applikationen fungerar som önskad.
Följande är de mest framträdande områdena för kompatibilitetstestning.
- För att bekräfta att applikationens användargränssnitt är enligt enhetens skärmstorlek är ingen text / kontroll delvis osynlig eller oåtkomlig.
- För att säkerställa att texten är läsbar för alla användare för applikationen.
- För att säkerställa att samtals- / larmfunktionen är aktiverad när applikationen körs. Ansökan minimeras eller avbryts vid ett samtal och sedan återupptas ansökan när samtalet stannar.
Testfall i återställbarhetstest
- Kraschåterställning och transaktionsavbrott
- Validering av den effektiva applikationsåterställningssituationen efter oväntade avbrott / kraschscenarier.
- Verifiering av hur applikationen hanterar en transaktion under ett strömavbrott (dvs. batteriet går ur eller en plötslig manuell avstängning av enheten)
- Valideringen av processen där anslutningen avbryts måste systemet återupprättas för att återställa de data som direkt påverkas av den avstängda anslutningen.
Viktig checklista
- Installationstest (om applikationen kan installeras på en rimlig tid och med nödvändigt kriterium)
- Avinstallationstestning (om applikationen kan avinstalleras på en rimlig tid och med nödvändigt kriterium)
- Nätverkstestfall (validering av om nätverket fungerar under erforderlig belastning eller inte, om nätverket kan stödja alla nödvändiga applikationer under testprocedurerna)
- Kontrollera ommappade nycklar
- Kontrollera applikationsstänkskärmen
- Fortsatt knappsatsinmatning vid avbrott och andra tider som nätverksproblem
- Metoder som handlar om att avsluta ansökan
- Laddareffekt medan ett program körs i bakgrunden
- Lågt batteri och högt krav på prestanda
- Ta bort batteriet medan en applikation utförs
- Förbrukning av batteri per applikation
- Kontrollera applikationens biverkningar