Introduktion till smidig testning

Agile testing är en mjukvarutestningsprocess. Det följer principen för Agile mjukvaruutveckling. Det är en ansluten utvecklingsmetodik eftersom utvecklings- och testaktiviteter går parallellt här. Utvecklingen är i linje med kundernas förändrade krav.

Smidig testning är en kontinuerlig process. Alla medlemmar i projektet är involverade i detta. Testning är inte en separat fas utan snarare görs den tillsammans med kodning, som ett resultat är slutprodukten av hög kvalitet och uppfyller kundens krav. Testningen börjar i början av projektet och det finns en allians mellan testning och utveckling.

Det smidiga teamets huvudmål är att uppnå kvalitet. Tidsramarna för smidiga tester är korta (1 till 4 veckor) och heter Iterationer. Testning sker parallellt med utvecklingen av en iterativ modell.

Principer för smidig testning

1. Kontinuerlig: Det ger återkoppling kontinuerligt, fortlöpande, så att produkterna möter företagets behov.

2. Lagarbete: I annan programvara är testteamet ansvarigt för testning men i smidiga tester, tillsammans med testteamet, är utvecklarna och affärsanalytikerna lika involverade i testningen.

3. Tid för återkopplingstid: Eftersom företagsteamet är involverade i smidiga tester, är feedbacken snabb och kontinuerlig och därför är feedbackstiden mycket kort.

4. Ren och förenklad kod: De fel som hittas av det agila teamet korrigeras inom samma iteration och därmed hålls koden ren och förenklad.

5. Genomförande test: Här utförs test vid tidpunkten för implementering medan test i andra processer utförs efter implementering.

6. Lätta dokument: Smidiga testare använder återanvändbara checklistor för att bestämma vilka tester som ska tas. Dokumenten kan användas för flera syften och verktygen som används är också lätta.

7. Testdriven utveckling: Här drivs utvecklingen av testning. Testfall skrivs enligt kraven, så denna metod kallas Test Driven Development (TDD). I programvaran för vattenfallstest utförs testning i den sista fasen.

Värden för smidig testning

  • Individer och kommunikation väljs utifrån strikt process och verktyg. Förfaranden och verktyg är inte försummade vid smidiga tester, utan är byggda på rimliga, starka processer och verktyg och dessa verktyg är också utnyttjade. Regeln här är att testare driver verktygen och utmatningen beror på testarna och inte tvärtom.
  • Valet som görs vid smidig testning är funktionell och användbar mjukvara över obrukbar och omfattande dokumentation. Huvudmålet här är själva testningen snarare än detaljerade dokument vars enda mål är att peka mot målet. Dokumenten finns definitivt när en medlem beslutar att lämna.
  • Kunddeltagande är hemligheten här. Klienten hålls alltid involverad och är i kontakt med projektets framsteg. Det betyder att klienten måste ha regelbundna möten i hela projektet snarare än att projektet ska levereras direkt när det är klart. Det här är extraarbete men det är definitivt bättre än att arbeta i fel riktning.

Eventuella nödvändiga ändringar accepteras och implementeras. Även om projektet följer en plan kan det lätt ändras när situationen förändras. Så man behöver inte vänta till slutet för att ta reda på det förändrade scenariot och få projektet avskedat på grund av det ändrade kravet.

Agile Testing Methods

Det finns olika smidiga testmetoder som:

1. Beteende Driven Development (BDD).

Beteende-driven utveckling förbättrar kommunikationen så att alla medlemmar förstår varje funktion innan processen startar. Utvecklare, analytiker och testare är i kontinuerlig kommunikation.

2. Acceptance Test Driven Development (ATDD).

Huvudsyftet här är att involvera alla teammedlemmar, dvs kund, testare och utvecklare, eftersom alla tre har olika perspektiv. Kunden fokuserar på problemet som ska lösas, utvecklaren fokuserar på hur det ska lösas och testarens mål är att se vad som kan gå fel. Dessa kallas Acceptantest där perspektiv på alla tre är integrerade och beskriver hur systemet kommer att fungera.

3. Förklarande test.

Vid sådana tester går testdesignen och dess utförande hand i hand. Tyngdpunkten läggs på arbetsprogramvara över dokumentation. Individer och kommunikation är viktigare än process och verktyg. Utforskande test är mer anpassningsbara till förändringar. Testplanerna är utformade och genomförda enligt testarnas resultat.

Testplan

Vid agil testning skrivs och uppdateras en testplan varje gång. Det inkluderar:

  • Testens omfattning
  • Nya funktioner som testas
  • Testnivå eller typ
  • Prestanda och belastningstest
  • Med tanke på infrastrukturen
  • Hjälpplan
  • Planera resurser
  • Leveranser och milstolpar

Faser av smidig testlivscykel

Det finns 5 faser av den smidiga testcykeln

  1. Konsekvensbedömning vilket innebär att insamla insatser från intressenter och användare som kommer att fungera som en feedback för nästa utvecklingscykel.
  2. Agil testplanering där alla intressenter samlas för att planera testprocessen, möten och leveranser.
  3. Släpp beredskap, ett steg där det avgörs om de funktioner som har utvecklats är redo att gå live eller inte.
  4. Dagliga skrummar som inkluderar ett vardagligt stående morgonmöte för att hämta statusen för testningen och sätta upp mål för dagen.
  5. Agility review där veckovisa möten med intressenter hålls för att kontrollera framstegen.

Fördelarna med smidig testning

Smidig testning har sina egna fördelar. Det är både tids- och pengarbesparande programvara eftersom det minskar dokumentationen och är mycket flexibel och anpassningsbar till de ständiga förändringarna i verksamheten. Regelbunden feedback erhålls från den faktiska användningen så att när den når det sista steget finns det minsta möjlighet att användaren inte är medveten om processen.

Agile-testning är den perfekta programvaran för tidig upptäckt av defekter och eftersom problemen fixas tidigt reduceras också kostnaderna för fixering. Slutprodukten är kundcentrerad och av hög kvalitet. Kontinuerlig kommunikation mellan teamen gör smidiga tester till en framgång.

Rekommenderade artiklar

Detta har varit en guide till Agile Testing. Här diskuterade vi begrepp, faser, fördelar, testplan, metoder, princip och värden för smidig testning. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer -

  1. Vad är ETL-testning?
  2. Vad är smidig programmering?
  3. Vad är Agile Sprint?
  4. Agile Coach intervjufrågor