Hvad er røgtestning?
Hvad er røgtestning
Røgtest er en softwaretestproces, der afgør, om den installerede softwarebuild er stabil eller ej. Røgtest er en bekræftelse på, at QA-teamet kan fortsætte med yderligere softwaretest. Den består af et minimalt sæt test, der køres på hver build for at teste softwarefunktionaliteter. Røgtest er også kendt som "Build Verification Testing" eller "Confidence Testing".
Enkelt sagt betyder røgtest at verificere, at de vigtige funktioner fungerer, og at der ikke er nogen showstoppere i bygningen, der er under test. Det er en mini og hurtig regressionstest af større funktionalitet. Det er en simpel test, der viser, at produktet er klar til test. Dette hjælper med at afgøre, om bygningen er fejlbehæftet, hvilket gør yderligere test spild af tid og ressourcer.
Sammenlign Røg vs sundhedstest
Hvornår laver vi røgtest
Røgtest udføres, når de nye funktionaliteter i software udvikles og integreres med eksisterende build, der er implementeret i QA/staging-miljø. Det sikrer, at alle kritiske funktioner fungerer korrekt eller ej.
I denne testmetode implementerer udviklingsteamet den indbyggede QA. Et undersæt af testcases tages, og derefter kører testere testcases på buildet. QA-teamet tester applikationen mod de kritiske funktionaliteter. Disse serier af testcases er designet til at afsløre fejl, der er i build. Hvis disse tests er bestået, fortsætter QA-teamet med Funktionstest.
Enhver fejl indikerer et behov for at håndtere systemet tilbage til udviklingsteamet. Når der er en ændring i bygningen, udfører vi røgtest for at sikre stabiliteten.
Eksempel: -Ny registreringsknap tilføjes i login-vinduet og build implementeres med den nye kode. Vi udfører røgtest på nybyggeri.
Røgtestene kvalificerer bygningen til yderligere formelle tests. Hovedformålet med røgtest er at opdage tidlige større problemer. Røgtest er designet til at demonstrere systemets stabilitet og overensstemmelse med kravene. En build inkluderer alle datafiler, biblioteker, genanvendelige moduler, konstruerede komponenter, der er nødvendige for at implementere en eller flere produktfunktioner.
Hvad sker der, hvis vi ikke laver røgtest
Hvis vi ikke udfører røgtest i de tidlige stadier, kan der opstå defekter i senere stadier, hvor det kan være dyrt. Og den Defekt fundet i senere stadier kan være showstoppere, hvor det kan påvirke frigivelsen af leverancer.
Hvem skal lave røgtest
Efter frigivelse af build til QA-miljø udføres røgtestning af QA-ingeniører/QA-leder. Når der er en ny build, bestemmer QA-teamet den vigtigste funktionalitet i applikationen for at udføre røgtest. QA-teamet tjekker for showstoppere i den applikation, der testes.
Test udført i et udviklingsmiljø på koden for at sikre korrektheden af applikationen før frigivelse af build til QA, dette er kendt som Sanity-test. Det er normalt smal og dyb testning. Det er en proces, der verificerer, at applikationen under udvikling opfylder de grundlæggende funktionelle krav.
Sanitetstest bestemmer færdiggørelsen af udviklingsfasen og træffer en beslutning om, hvorvidt softwareproduktet skal bestå eller ej til yderligere testfase.
Hvorfor laver vi røgtest?
Røgtest spiller en vigtig rolle i softwareudvikling, da det sikrer korrektheden af systemet i de indledende faser. På den måde kan vi spare testindsats. Som et resultat bringer røgtest systemet til en god tilstand. Når vi har afsluttet røgtestning, er det kun vi, der starter funktionstest.
- Alle showstoppere i bygningen vil blive identificeret ved at udføre røgtest.
- Røgtest udføres efter build er frigivet til QA. Ved hjælp af røgtest identificeres de fleste af fejlene i de indledende faser af softwareudvikling.
- Med røgtest forenkler vi opdagelse og udbedring af større fejl.
- Ved røgtestning kan QA-teamet finde defekter i applikationsfunktionaliteten, som kan være dukket op af den nye kode.
- Røgtest finder de største alvorlige defekter.
Eksempel 1: Logningsvindue: Kan flytte til næste vindue med gyldigt brugernavn og adgangskode ved at klikke på send-knappen.
Eksempel 2: Brugeren kan ikke logge ud fra websiden.
Hvordan laver man røgtest?
Røgtest udføres normalt manuelt, selvom der er mulighed for at opnå det samme gennem automatisering. Det kan variere fra organisation til organisation.
Manuel røgtest
Generelt udføres røgtest manuelt. Det varierer fra organisation til organisation. Røgtest udføres for at sikre, at navigationen af kritiske stier er som forventet og ikke hæmmer funktionaliteten. Når buildet er frigivet til QA, skal der tages højprioriterede funktionalitetstestsager og testes for at finde de kritiske defekter i systemet. Hvis testen består, fortsætter vi funktionstesten. Hvis testen mislykkes, afvises bygningen og sendes tilbage til udviklingsteamet til rettelse. QA starter igen røgtest med en ny build-version. Røgtest udføres på nybyggeri og vil blive integreret med gamle builds for at opretholde systemets korrekthed. Før der udføres røgtest, bør QA-teamet tjekke for korrekte byggeversioner.
Røgtest af Automation
Test af automatisering bruges til Regressionstest. Vi kan dog også bruge et sæt automatiserede testsager til at køre mod Smoke Test. Ved hjælp af automatiseringstests kan udviklere tjekke build med det samme, når der er en ny build klar til implementering.
I stedet for at have gentaget test manuelt, hver gang den nye software build er implementeret, udføres registrerede røgtestsager mod buildet. Det verificerer, om de vigtigste funktioner stadig fungerer korrekt. Hvis testen mislykkes, kan de rette bygningen og geninstallere bygningen med det samme. På den måde kan vi spare tid og sikre en kvalitetsopbygning til QA-miljøet.
Ved hjælp af et automatiseret værktøj registrerer testingeniøren alle manuelle trin, der udføres i softwarebuilden.
Røgtestcyklus
Nedenstående flowdiagram viser, hvordan røgtestning udføres. Når buildet er implementeret i QA, og røgtest er bestået, går vi videre til funktionstest. Hvis røgtesten mislykkes, afslutter vi testen, indtil problemet i buildet er løst.
Fordele ved røgafprøvning
Her er nogle få fordele anført for røgtestning.
- Let at udføre test
- Defekter vil blive identificeret i tidlige stadier.
- Forbedrer kvaliteten af systemet
- Reducerer risikoen
- Fremskridt er lettere at få adgang til.
- Sparer testindsats og tid
- Let at opdage kritiske fejl og rettelse af fejl.
- Det kører hurtigt
- Minimerer integrationsrisici
Eksempel på røgprøver
T.ID | TESTSCENARIER | BESKRIVELSE | TEST TRIN | FORVENTET RESULTAT | FAKTISKE RESULTAT | STATUS |
---|---|---|---|---|---|---|
1 | Gyldige login-legitimationsoplysninger | Test webapplikationens loginfunktionalitet for at sikre, at en registreret bruger har lov til at logge ind med brugernavn og adgangskode | 1. Start applikationen 2. Naviger på login-siden 3. Indtast gyldigt brugernavn 4. Indtast gyldig adgangskode 5. Klik på login-knappen |
Login skal være en succes | som forventet | Pass |
2 | Tilføjelse af elementfunktionalitet | Mulighed for at tilføje vare til indkøbskurven | 1. Vælg kategoriliste 2. Læg varen i indkøbskurven |
Varen skal tilføjes i indkøbskurven | Varen bliver ikke lagt i indkøbskurven | Fail |
3 | Log ud funktionalitet | Tjek log ud funktionalitet | 1. vælg Log ud-knap | Brugeren skal kunne logge ud. | Brugeren kan ikke logge ud | Fail |
Konklusion
I Software Engineering bør røgtestning udføres på hver eneste build uden fejl, da det hjælper med at finde defekter i tidlige stadier. Røgtestaktivitet er det sidste trin, før softwarebygningen går ind i systemstadiet. Røgtest skal udføres på hver bygning, der vendes til test. Det gælder nyudvikling og større og mindre udgivelser af systemet.
Før der udføres røgtest, skal QA-teamet sikre sig den korrekte build-version af den applikation, der testes. Det er en simpel proces, som tager et minimum af tid at teste applikationens stabilitet.
Røgtest kan minimere testindsatsen og kan forbedre applikationens kvalitet. Røgtest kan udføres enten manuelt eller ved automatisering afhængigt af klienten og organisationen.