Røyktesting er en prosess som brukes til å teste programvare for å finne ut om den distribuerte programvarebyggingen er stabil eller ikke.
Når du røyktestprogramvare, kjører du en serie tester designet for å vurdere hver av programvarens kjernefunksjoner.
Røyktestverktøy bekrefter at de viktigste funksjonene i programvaren fungerer. Det finnes flere forskjellige tilnærminger til røyktesting, og moderne teknologi gjør automatisert røyktesting til en mulighet for de fleste programvarebygg.
I denne artikkelen skal vi dykke dypt inn i røyktesting for å gjennomgå typene, prosessene og tilnærmingene til røyktesting som programvaretestere bruker. Vi vil også se på moderne røyktestingsverktøy inkludert røyktestautomatisering.
Kort fortalt vil du lære alt du trenger å vite om røyktesting.
Hva er røyktesting i programvareteknikk?
Røyktesting er prosessen med å teste programvare for å sikre at den oppfyller grunnleggende funksjonalitets- og stabilitetskrav. Det er egentlig en type miniatyr, rask regresjonstesting som involverer testing av de viktigste funksjonene i programvaren for å sikre at de fungerer på et grunnleggende nivå.
Røyktesting er et viktig tidlig trinn i QA-prosessen fordi det indikerer om teamet skal fortsette med ytterligere testing eller sende produktet tilbake til utviklerne umiddelbart.
Hvis produktet ikke består røyktesten, indikerer dette at den første konstruksjonen har betydelige mangler som må løses før videre testing kan finne sted.
Når må du ta røyktesting?
Vi røyktester programvare hver gang nye funksjoner utvikles og integreres i en eksisterende bygning og før den nye konstruksjonen distribueres til QA. Gjennomføring av røyktesting på dette stadiet forhindrer at penger og andre ressurser kastes bort på QA-testing for programvare med store underliggende problemer.
For å utføre en QA-røyktest, distribuerer utviklingsteamet den nye programvarebyggingen i QA, og et undersett av testtilfeller tas og kjøres på bygget. QA-teamet tester applikasjonen mot dens viktigste funksjoner. Hvis røyktesten består, vil QA-teamet fortsette med funksjonstesting, og hvis det mislykkes, sendes bygget tilbake til utviklingsteamet for videre utvikling.
Røyktesting som dette skjer hver gang nye funksjoner legges til en programvarebygging.
Det kan være andre ganger at QA-team røyker testprogramvare, for eksempel:
● Før du sender ny kode til et depot
● Før en stor testserie inkludert regresjons- og aksepttesting
● Etter å ha implementert en ny programvarebygging
Hvis du ikke utfører en røyktest på disse punktene, kan du ende opp med å finne store defekter på senere stadier av funksjonalitetstesting som kan påvirke utgivelsesdatoen for det nye bygget eller forårsake mer alvorlige forstyrrelser i timeplanen din.
Når du ikke trenger å ta røyktesting
Det er viktig å utføre røyktesting i programvaretesting når du gjør endringer i programvarekoden eller legger til nye funksjoner i en build.
Det er også et viktig forberedende skritt til funksjonalitetstesting fordi det forhindrer QA-team i å kaste bort tiden sin på å teste programvare som ikke er klar.
Hvis programvaren din ikke oppfyller disse kriteriene, kan det hende du ikke trenger å utføre røyktesting på dette tidspunktet… selv om automatiserte røyktestverktøy gjør det enkelt og kostnadseffektivt å utføre regelmessige røyktester for å sikre at programvaren alltid fungerer som den skal .
Hvem er involvert i røyktesting
Røyktesting utføres av QA-ingeniører eller QA-lederen; det er den første fasen av QA-testing og den utføres i et QA-miljø.
QA-teamet er ansvarlig for å teste programvarebyggingen og vurdere ytelsen under en rekke forhold og påkjenninger. Under røyktesten vil QA-ingeniører se etter «showstoppers», eller feil som stopper utviklingen og må fikses før testingen kan fortsette.
Når du sammenligner røyktesting vs tilregnelighetstesting vs regresjonstesting , er det viktig å vurdere ikke bare hva som testes, men også hvem som utfører testene.
Røyktesting i programvaretesting utføres alltid av kvalitetseksperter. Dette skiller røyktesting fra tilregnelighetstesting, som er testing utført i utviklingsmiljøet og vanligvis ikke involverer QA-teamet.
Røyktestens livssyklus
Røyktestens livssyklus illustrerer hvor røyktesting skjer under produktutvikling og QA-testing. Å forstå hvert trinn i denne syklusen vil hjelpe deg å forstå mer om hvordan røyktesting passer inn i testreisen og forskjellene mellom røyktesting vs fornuftstesting vs regresjonstesting.
1. Kode
Den første fasen av enhver programvarebygging er alltid å skrive og lage kode. Kode fungerer som byggesteinen i all programvare, og utviklingsteamet må skrive koden før den kan testes for stabilitet og funksjonalitet.
2. Enhetstesting
Enhetstesting utføres vanligvis av utviklere, selv om noen ganger QA-ingeniører også kan utføre noen enhetstesting. Enhetstesting sikrer at ulike enheter eller kodeelementer fungerer som forventet før individuelle enheter integreres sammen til en enkelt programvarebygging.
Enhetstesting skjer vanligvis ved siden av utviklingen, fordi den fremhever feil og feil i koden som kan fikses umiddelbart.
3. Integrasjonstesting
Integrasjonstesting er prosessen med å teste hvordan individuelle enheter fungerer sammen når de er integrert i ett enkelt stykke programvare.
Selv om hver enkelt enhet fungerer godt, kan det ofte oppstå problemer når disse enhetene er integrert med hverandre. Integrasjonstesting utføres vanligvis av utviklere, selv om ulike tilnærminger til denne typen testing betyr at den kan utføres på forskjellige stadier av programvarebyggingsprosessen.
4. Sanitetstesting
Sanitetstesting er en type regresjonstesting, og det er vanligvis den siste typen regresjonstesting som finner sted. Det oppstår under utviklingsstadiet av bygget, etter at eventuelle feil som er fremhevet av regresjonstesting er reparert.
Sanitetstesting er vanligvis veldig rask og eksisterer ganske enkelt for å sikre at programvaren kjører jevnt og at eventuelle feil som er funnet har blitt tilstrekkelig fikset.
Røyk- og fornuftstesting er noen ganger forvirret, men det er viktig å huske at fornuftstesting skjer i utviklingsmiljøet, mens røyktester forekommer i QA-miljøet.
5. Røyktesting
Røyktesting er den første fasen av QA-testing og den første typen tester som utføres i et QA-miljø.
Røyktesting skjer vanligvis før fornuftstesting og regresjonstesting til tross for at det vanligvis utføres av kvalitetskontrollteam. Det er en rask og enkel testprosess – og i disse dager bruker de fleste QA-team automatisert røyktesting i programvaretesting – som avgjør om konstruksjonen er stabil eller ikke, og om ytterligere tester bør kjøres eller ikke.
Fordi røyktesting er den raskeste og enkleste testen når man sammenligner røyktesting vs sanitetstesting vs regresjonstesting, er det fornuftig å utføre dette først før du går videre til andre, mer komplekse tester.
6. Funksjonstesting
Funksjonell testing er det neste trinnet i livssyklusen for programvaretesting, og den utføres i QA-miljøet.
Funksjonstesting tester hver funksjon i en programvareapplikasjon mot kravene, og den fokuserer på funksjoner, brukervennlighet, tilgjengelighet og feilforhold.
Funksjonstesting kan starte når røyktesten er bestått.
Røyktestapplikasjoner på forskjellige nivåer
Røyktesting kan brukes på tre forskjellige testnivåer: røyktesting på akseptnivå, røyktesting på systemnivå og røyktesting på integrasjonsnivå.
1. Aksepttestingsnivå
Røyktesting på akseptnivå utføres vanligvis når en programvarebygging er utgitt til QA. Denne typen QA røyktest verifiserer ganske enkelt den grunnleggende funksjonaliteten til bygget og om dette stemmer overens med den forventede funksjonaliteten.
2. Systemtestingsnivå
Røyktesting på systemnivå innebærer å teste de viktigste arbeidsflytene i systemet. Dette utføres etter at selve systemet er testet, og før det gjennomføres en fullstendig regresjonstest av systemet.
På systemnivå er automatisert røyktesting den vanligste formen for røyktesting.
3. Integrasjonstestnivå
På integrasjonstestnivå sikrer røyktester at alle programvarens ende-til-ende-funksjonalitet fungerer som forventet og grunnleggende integrasjon er funksjonell.
Denne typen røyktesting skjer vanligvis når individuelle moduler implementeres, eller når flere moduler er integrert i en enkelt programvarebygging.
Manuelle vs automatiserte røyktester
Når programvareteam først begynner å utføre røyktester, må de ta en beslutning om de skal utføre manuelle røyktester eller automatiserte røyktester.
Mens automatiserte røyktester vanligvis gir raskere og mer kostnadseffektive resultater, kan det også ta tid å lage og implementere dem. Mange lag starter med å lage manuelle røyktester før de vurderer automatisering lenger ned i linjen.
1. Manuell røyktesting
Manuelle røyktester er ganske enkle å designe og kan vanligvis utføres av ikke-tekniske fagfolk fra utenfor QA eller utviklingsteam. Dette betyr at manuelle røyktester ofte favoriseres i mindre selskaper som kanskje ikke har et dedikert QA-ledelse ennå.
Ved manuell røyktesting er det viktig å teste en rekke brukstilfeller som dekker nok av programvarens kjernefunksjoner uten å dekke så mange at røyktesten tar for lang tid å gjennomføre. Det ideelle antallet brukstilfeller anses vanligvis å være mellom 20 og 50.
Fordelene ved å utføre røyktester manuelt
Det er flere fordeler ved å utføre manuelle røyktester i QA sammenlignet med automatiserte røyktester. Manuelle røyktester gir ofte mer detaljert innsikt i ytelsen og funksjonaliteten til programvare sammenlignet med automatiserte tester.
Ikke-ingeniører kan utføre manuell testing
Mens automatisert røyktesting vanligvis krever ekspertise fra programvareingeniører og utviklere for å sette opp, kan manuelle røyktester utføres av teammedlemmer med mindre spesialkompetanse.
Dette er vanligvis fordelaktig i mindre team der ressursene allerede kan være strukket og tiden til spesialpersonell er ekstremt verdifull.
Du kan lage en tilpasset røyktest for hver jobb
Hvis du vil forsikre deg om at røyktesten din nøyaktig dekker de viktigste funksjonene til en hvilken som helst programvareapplikasjon og fokuserer på de funksjonene som er viktigere for hvert bygg, kan du opprette en manuell røyktest som lar testerne skreddersy testen til hvert prosjekt.
Manuelle røyktester som dette kan gi mer nyttige resultater sammenlignet med noen automatiserte tester, men det betyr at de er ekstremt tidkrevende å sette opp og kjøre.
Manuelle tester avslører kvalitative data
Når du kjører en automatisert røyktest, er alt du kan forvente å motta kvantitative data om hvilke aspekter av testen som har bestått og hvilke som har mislyktes.
Når teammedlemmer utfører manuell røyktesting, kan de bruke sin innsikt, intuisjon og dømmekraft til å vurdere ikke bare om konstruksjonen består eller ikke, men hvordan og/eller hvorfor.
Utfordringene ved manuell røyktesting
Det er også mange utfordringer med å utføre røyktesting manuelt, og disse forklarer hvorfor mange bedrifter velger å bruke automatisert røyktesting der det er mulig.
Manuell røyktesting er grundig, men det er også veldig tidkrevende.
Manuelle røyktester tar tid
Manuelle røyktester tar betydelig lengre tid å fullføre enn automatiserte tester , og de krever mye mer av teamets oppmerksomhet.
Mens automatiserte tester ganske enkelt kan kjøre i bakgrunnen av seg selv, må teamet ditt sette av dedikert tid til å utføre en manuell røyktest.
Manuelle tester kan ikke kjøres for ofte
På grunn av den store mengden tid og ressurser som manuelle røyktester krever, kan de ikke utføres like regelmessig som automatiske røyktester.
Når man utfører en manuell røyktest, må programvaretestere sette av timer, opptil en halv dag, avhengig av testens kompleksitet.
Dette fjerner muligheten for daglig røyktesting, som i stor grad anses for å være bransjens beste praksis.
Det er alltid rom for feil
Fordi mennesker utfører manuell testing, er det alltid en mulighet for at feil kan gjøres under manuelle røyktester.
Av denne grunn er manuell røyktesting vanligvis ikke fullt så omfattende som automatisert testing, spesielt når det gjelder å plukke opp subtile feil som er lettere å gå glipp av eller når man utfører ekstremt repeterende tester som kan føre til at testere mister fokus under testing.
Når skal man bruke manuell røyktesting
Manuell røyktesting er mest brukt i mindre team som kanskje ikke har ressurser til å spare ingeniører for automatisert røyktesting, eller i tilfeller der ytterligere menneskelig innsikt og dømmekraft er ønsket eller nødvendig.
Av denne grunn implementeres ofte manuell røyktesting i røyktester på integrasjonsnivå.
2. Automatisert røyktesting
Automatisert røyktesting kan implementeres av programvareingeniører med kodeferdighetene som er nødvendige for å lage og kjøre en rekke relevante brukstilfeller for hver programvarebygging.
Automatisert røyktesting er mye raskere enn manuell testing, vanligvis ikke lenger enn 30 til 60 minutter, og den kan utføres i bakgrunnen mens alle medlemmene av utviklings- og QA-teamet fortsetter sine daglige oppgaver.
Av denne grunn har automatisert røyktesting blitt vanlig i programvareindustrien ettersom flere og flere firmaer søker å forbedre arbeidsplassens effektivitet.
Fordelene med røyktestautomatisering
Røyktestautomatisering gir mange fordeler for de selskapene som har tid og ressurser til å implementere det. Det er raskt og effektivt, og på grunn av mangelen på stressautomatiserte tester på team og ressurser, kan de kjøres regelmessig selv i små selskaper.
Automatisert testing er rask
Automatisert røyktesting er mye raskere enn manuell testing, og de fleste automatiserte tester tar ikke lenger enn 30 til 60 minutter å fullføre.
Manuelle tester kan ta timer, til sammenligning.
Automatiserte røyktester krever minimale ressurser og når de er implementert, er de veldig enkle å kjøre.
Automatisering gjør daglige røyktester mulig
Gjeldende bransjebestemmelser tilsier at daglige røyktester er ideelle, spesielt når du arbeider med programvare som konstant er i endring.
Manuelle røyktester er for tidkrevende å kjøre på daglig basis, men automatiserte røyktester er enkle å gjennomføre ved starten av hver arbeidsdag.
Automatisering eliminerer menneskelige feil
Automatiserte tester kjører fra skript som er forberedt på forhånd og laget til svært krevende standarder. Dette betyr at sjansen for at en automatisert test mangler en stor feil eller et viktig problem er svært lav.
Automatisering kan imitere belastnings- og ytelsestester
Laste- og ytelsestester vurderer hvor godt en applikasjon fungerer når mange brukere bruker den samtidig. Automatisert røyktesting kan etterligne den ekstra belastningen fra flere brukere på måter som manuell testing ikke kan, og gir et ekstra lag med data om programvareytelse under visse forhold.
Utfordringene med røyktestautomatisering
Røyktestautomatisering er ikke uten utfordringer. Det kan være mer tid- og ressurskrevende å implementere automatisert røyktesting, spesielt i mindre team med færre ingeniører til rådighet.
Tekniske krav
Automatiserte røyktester krever mer teknisk kunnskap og ferdigheter i koding enn manuelle røyktester. Programvareingeniører må ha tid og kunnskap til å vite hvordan man lager automatiserte tester før disse kan implementeres, og ikke alle team vil nødvendigvis ha ressursene tilgjengelig for å gjøre dette.
Mangel på menneskelig innsikt
Automatiseringstesting gir et samlet overblikk over funksjonaliteten til en programvareapplikasjon, og når de utfører en automatisert røyktest, får programvaretestere innsikt i programvarens grunnleggende funksjoner som er det ultimate formålet med en røyktest.
Automatiserte tester gir imidlertid ingen innsikt i flere faglige aspekter ved programvareytelse, som brukervennlighet og tilgjengelighet.
Når skal man implementere røyktestautomatisering
Automatisering brukes ofte i røyktesting fordi formålet med røyktesting rett og slett er å sjekke grunnleggende funksjonalitet, noe som automatisert testing er relativt gode på.
Lag med tilstrekkelige tekniske ferdigheter til å implementere automatisert røyktesting har mest sannsynlig tid og ressurser til å investere i denne prosessen, og større mer etablerte selskaper vil sannsynligvis føle mer press for å oppfylle standardene for beste praksis for daglig røyktesting.
Røyktestautomatisering vs manuell røyktesting
Det finnes ingen riktig eller gal måte å gjennomføre røyktesting på, og det som fungerer bra for ett lag fungerer kanskje ikke bra for et annet.
Før de utfører en røyktest, bør programvareteam vurdere sine mål, ressurser og langsiktige prosjektplaner. Prosessen med å teste programvare manuelt kan være lærerikt for unge fagfolk som er nye innen QA, men for mer etablerte team er det sjelden en fordel å velge manuell testing fremfor automatisert testing.
Hybrid røyktester
Det tredje alternativet for team som ikke kan velge mellom manuell og automatisert røyktesting og sunnhetstesting, er å velge hybridtesting.
Hybridtesting kombinerer aspekter av både manuell og automatisert røyktesting for å øke den generelle ytelsen og effektiviteten til testene. Når du bruker hybrid røyktestmetoden, kan mesteparten av testen være automatisert, men med visse aspekter utført manuelt. Dette gjør at teamene kan fokusere mer på de aspektene av bygget som trenger det, samtidig som de generelle tidskravene til røyktesten holdes lave.
Typer røyktesting
Røyktesting kan grovt sett deles inn i to kategorier, formell og uformell røyktesting. Hvorvidt røyktesting er formell eller uformell, avhenger av om den er igangsatt av QA-lederen formelt eller bare utført som en del av utviklingen.
1. Formelle røyktester
I en formell røyktest sender programvareutviklere programvarebyggingen videre til QA-ingeniøren eller QA-lederen for formell testing. QA-lederen tildeler testere oppgaven med røyktesting og ber om at de utfører røyktesten enten ved å bruke røyktestverktøy som automatisering eller manuelt.
Når de utfører formelle røyktester, setter QA-testere sammen resultatene av testen til en formell rapport som kan analyseres av QA-lederen.
Formelle røyktester utføres på viktige punkter under programvarebyggingsprosessen, for eksempel før funksjonstesting av nye funksjoner utføres.
2. Uformelle røyktester
Uformelle røyktester er røyktester utført på en programvarebygging under utviklingen eller QA-prosessen som ikke er formelt rapportert om eller kreves av QA-ledelsen.
Daglige røyktester, som mange programvareteam utfører som et spørsmål om protokoll, er et eksempel på uformelle røyktester.
Uformelle tester kan utføres på ad-hoc basis når QA-ingeniører mener det kan være nyttig.
Hva du trenger for å starte røyktesting
Før du kan starte røyktesting i programvaretesting, er det viktig å samle alle tingene du trenger, inkludert datafiler og ferdigheter i organisasjonen din.
Hva du trenger for å utføre røyktesten vil avhenge av om du planlegger å utføre automatisert eller manuell røyktesting, og hvilke testverktøy du bruker for å gjøre prosessen enklere.
1. En liste over testtilfeller
Før du starter en røyktest, trenger du en omfattende liste over alle testtilfellene du vil at røyktesten skal evaluere.
Testtilfeller er individuelle sett med handlinger som du ønsker å teste for å bedømme om resultatet av å utføre disse handlingene stemmer overens med resultatene du forventer.
For eksempel kan et veldig enkelt testtilfelle være at programvaren laster inn hoveddashbordet når du åpner applikasjonen.
2. Test filer
Før du kan kjøre røyktesten, må du samle alle testfilene som du skal kjøre røyktesten på. Du kan kanskje bruke kommandolinjen til røyktestprogramvaren du bruker for å samle alle filene dine på ett sted.
Hvordan du samler filene dine, og hvor du lagrer dem, vil avhenge av hvordan organisasjonen din fungerer.
3. Verktøy for røyktesting
Du kan utføre en grunnleggende røyktest uten å bruke noen spesielle verktøy, men bruk av røyktestverktøy kan hjelpe deg med å forbedre nøyaktigheten av resultatene og fremskynde prosessen med røyktesting.
Undersøk røyktestverktøy på nettet først og velg programvaren som automatiserer eller optimerer røyktesten din i forhold til dine spesielle behov og budsjett.
Prosessen med røyktesting
Den beste måten å gjennomføre en røyktest på varierer mellom organisasjoner, og hvis du er ny på røyktesting kan det være lurt å eksperimentere med ulike tilnærminger for å se hva som fungerer best for teamet ditt.
Nedenfor er et eksempel på hvordan du utfører en grunnleggende røyktest for å vurdere kjernefunksjonene til programvaren din.
Trinn 1: Velg testtilfellene dine
Det første trinnet for å gjennomføre en røyktest er å velge hvilke testtilfeller du skal kjøre røyktesten på.
Når du designer en røyktest, bør programvareingeniører og kvalitetskontrollingeniører vurdere hvilke programvarefunksjoner som er mest kritiske for programvaren og hvordan disse funksjonene best kan testes. Ikke kast bort tiden din på å teste funksjoner som ikke er viktige for programvarens funksjon.
Trinn 2: Bygg røyktester
Når du har identifisert testtilfellene du skal bruke, kan du skrive testskript for å teste dem. Bruk et enkelt skript for røyktester for å øke fleksibiliteten mens du kjører testen.
Hvis du velger å automatisere røyktesting, trenger du ikke alltid å skrive manuelle testskript hver gang du vil kjøre en røyktest. Du kan bruke automatiseringspakker for programvaretesting for å automatisere skript som dette.
Trinn 3: Kjør røyktester
Når du har laget røyktestskriptene dine, kan du kjøre dem på bygget for å se etter feil og andre store feil. Dette bør ikke ta mer enn 30 til 60 minutter, og når testene dine er ferdige, kan du vurdere resultatene for å bestemme de neste trinnene dine.
Trinn 4: Rett opp eventuelle feil
Formålet med røyktesting i programvareutvikling er å identifisere eventuelle større feil eller showstoppere før full QA-testing starter.
Hvis røyktestene dine avslører noen vesentlige problemer som forstyrrer kjernefunksjonene til programvarebyggingen din, er det viktig å sende programvaren og analysen tilbake til utviklingsteamet for feilretting før du fortsetter med QA.
Beste praksis for røyktesting
Røyktesting er en pålitelig måte å identifisere store feil i programvarebygg på alle stadier av utviklingen. Å følge bransjens beste praksis er den beste måten å sikre at røyktestene dine er effektive, nøyaktige og produktive.
1. Kjør røyktester ofte
Det er ikke alltid mulig å kjøre røyktester hver dag, spesielt hvis du kjører manuelle tester i stedet for automatiserte røyktester.
Kjør røyktester så ofte du kan, og hver gang du implementerer endringer i programvaren. Når du er i stand til det, anses å kjøre daglige røyktester som beste praksis.
2. Hopp aldri over teststadier
Hvis du har det travelt, kan det være fristende å hoppe over noen av teststadiene for å komme raskere videre i utviklingsprosessen, men både røyk- og regresjonstesting er avgjørende for å holde utviklingen på rett spor.
Test alltid byggene dine med røyk- og fornuftstesting før du går videre til neste trinn.
3. Test hver endring
Det finnes ingen enkelt søknad om røyktesting. Du kan og bør bruke røyktester for å teste hver endring du gjør i en programvarebygging og for å teste programvaren din mellom ulike utviklingsstadier.
Røyktester bør være forløperen til integrasjonstesting, ytelsestesting og funksjonstesting.
4. Spor testresultatene dine
Det er standard praksis å teste resultatene av en formell røyktest, men selv når de utfører uformelle røyktester, bør ingeniører holde litt oversikt over resultatene.
Dette gjør det lettere å sende resultatene tilbake til utviklere og holde styr på hvilke funksjoner som ikke består testen.
5. Kjør røyktesten to ganger
Å kjøre røyktesten to ganger kan virke som overdreven, men hvis du virkelig vil fange hver eneste feil under testen, er det best å kjøre den to ganger.
Dette sikrer at røyktesten din har alle muligheter til å fange opp store feil og problemer som kan forårsake ytterligere problemer hvis de ikke fikses umiddelbart.
6. Velg riktig type røyktest
Om du bør bruke manuell eller automatisert røyktesting avhenger av størrelsen og behovene til teamet ditt. Sørg for at du velger den beste testtypen for prosjektet ditt for å optimalisere effektiviteten uten å gå på akkord med nøyaktigheten til resultatene dine.
Typer utganger fra en røyktest
Når du gjennomfører en røyktest, kan du forvente at røyktesten din vil resultere i ett av to distinkte resultater for hvert testtilfelle du vurderer: bestått eller ikke bestått.
1. Bestått
Et mulig utfall for hver testcase du kjører er at røyktesten består. Dette betyr at det faktiske resultatet av testen stemmer overens med det forventede resultatet av testen.
For eksempel, hvis du kjører en test på hva som skjer når du laster applikasjonen og den laster inn på skjermen som skal åpnes ved lasting, skal skriptet ditt vise dette som en bestått.
2. Mislykket
Hvis røyktesten mislykkes for et bestemt testtilfelle, betyr dette vanligvis at det faktiske resultatet av testen ikke stemte overens med det forventede resultatet av testen.
Hvis du for eksempel tester en handleapplikasjon og en av testsakene du kjører tester funksjonaliteten til å legge til varer i handlekurven din, mislykkes testen hvis varene du legger til i handlekurven din ikke vises i kurv som du forventer at de vil.
Eksempler på testtilfeller for røyktesting
Når du prøver å finne ut hvilke testtilfeller som skal inkluderes i røyktesten, skriv en liste over kjernefunksjonene til programvaren og vurder hvilke av dem som er avgjørende for å kjøre og bruke programvaren.
Noen eksempler på testtilfeller for røyktesting kan hjelpe deg med å finne ut hvilke testtilfeller du skal bruke i din egen røyktest.
1. Validering av påloggingsinformasjon
Hvis applikasjonen din krever at brukere logger på, kan det være lurt å lage en testsak som sjekker om prosessen med å validere påloggingsinformasjon fungerer som den skal.
For å gjøre dette, lag et skript som automatiserer bevegelsene for å logge på, kjøre testen og sjekke resultatene. Hvis programvaren logger på som forventet, består denne røyktestsaken.
2. Opprette et nytt dokument
Du kan lage en testcase for å vurdere om programvaren din lar brukere lage et nytt dokument på riktig måte. Lag et skript som automatiserer dokumentoppretting, navngiving og lagring i programvaren din, og kjør det.
Eventuelle store problemer som oppstår og forhindrer denne prosessen vil bety at denne røyktesten mislykkes.
3. Logge ut
Hvis applikasjonen din har innloggingsfunksjonalitet, bør den også ha utloggingsfunksjonalitet. Kjør et skript for å teste hva som skjer når brukere klikker “logg ut”.
Hvis brukeren ikke klarer å logge ut når de klikker på denne knappen, mislykkes røyktesten.
Typer feil og feil oppdaget gjennom røyktesting
Røyktester kan hjelpe deg med å identifisere feil og feil som forstyrrer kjernefunksjonaliteten til programvaren din. Avhengig av når du kjører røyktesten og hva du vil sjekke, kan du finne forskjellige typer feil og feil gjennom røyktesting.
1. Funksjonsfeil
Funksjonelle feil er feil som oppstår når programvaren din ikke oppfører seg som du forventer at den skal, eller når den ikke fungerer som den skal.
De fleste testtilfellene du vil bruke røyktester for å sjekke er funksjonstester, og funksjonelle feil vil derfor mest sannsynlig bli identifisert av røyktester som dette.
2. Logikkfeil
Logiske feil representerer feil innenfor logikken til koden og kan også føre til at programvaren oppfører seg feil. Logiske feil kan føre til at handlinger produserer feil utdata eller til og med forårsake programvarekrasj.
En vanlig logisk feil er den uendelige sløyfen, som får programvaren til å gjenta de samme handlingene igjen og igjen til den krasjer.
3. Integrasjonsfeil
Hvis du kjører en røyktest på integrasjonsnivå, kan du finne integrasjonsfeil under testen. Disse oppstår når to separate sett med kode ikke integreres feilfritt med hverandre. De kan være forårsaket av et bredt spekter av kompatibilitetsproblemer i koden og kan kreve komplekse løsninger for å reparere.
Vanlige måleverdier for røyktesting
Når de utfører en røyktest, kan QA-team bruke beregninger for å vurdere resultatene av en røyktest og bedømme om testen har bestått eller ikke bestått.
I tillegg til å vurdere om programvaren er i stand til å utføre sine kjernefunksjoner riktig, kan røyktestmålinger blant annet vurdere hastigheten og lastetidene til programvaren.
1. Programvarehastighet
Røyktester kan brukes til å kontrollere at programvarehastighet og lastetider oppfyller visse kriterier som er skissert i individuelle testtilfeller.
Hvis du for eksempel tester hvordan programvaren oppfører seg når du laster applikasjonen og applikasjonen laster som forventet, men det tar to minutter å starte opp, kan du merke dette som en feil fordi den ikke oppfyller forventet lastetid.
2. Pålitelighet
Å kjøre røyktesten to ganger kan også hjelpe deg med å teste påliteligheten til programvaren. Hvis enkelte testtilfeller passerer én gang, men mislykkes én gang, indikerer dette at en feil i koden forårsaker feil som kanskje ikke oppstår hver gang programvaren brukes, men som likevel kan forårsake alvorlige problemer for brukerne.
De beste gratis røyktestverktøyene
Røyktestverktøy kan hjelpe deg med å kjøre røyktester mer effektivt og raskt for å hjelpe deg å få mest mulig ut av røyktestene dine.
Nedenfor er noen av de beste røyktestingsverktøyene som er tilgjengelige uten kostnad i dag.
5 beste gratis røyktestverktøy
1. ZAPTEST GRATIS utgave
ZAPTEST er et gratis verktøy som lar brukere automatisere programvaretesting og RPA uten å betale en cent.
Du kan bruke ZAPTEST FREE-utgaven til å utføre enkle røyktester på flere plattformer, inkludert mobil- , web- , API- og LOAD- plattformer.
Hvis du ønsker å prøve ut automatisert røyktesting, kan ZAPTEST gratisutgave hjelpe deg med å se fordelene med automatisering på første hånd. Den er også enkel å bruke selv om du ikke har en teknisk bakgrunn, siden den har et kodeløst grensesnitt og utnytter den nyeste Computer Vision-teknologien .
Viktigst av alt, ZAPTEST FREE er bra …. gratis for alltid! Derimot har mange røyktesting og generelle programvareautomatiseringsverktøy en innledende testperiode, hvoretter du blir trukket til å betale abonnementsavgifter.
2. Selen
Selenium er et gratis verktøy med åpen kildekode som du kan bruke til å kjøre forskjellige typer tester på programvaren din, inkludert røyk- og regresjonstesting. Det fungerer med mange forskjellige programmeringsspråk, og det er spesielt bra for å teste webapplikasjoner.
3. Appium
Hvis du vil utføre røyk- og fornuftstesting på mobilapper, er Appium et bedre valg enn Selenium. Appium er enkelt å installere og bruke og kan brukes til å utføre enkle røyktester på apper utviklet for både iOS og Android.
4. Testlink
Testlink er et gratis, nettbasert administrasjonsverktøy som lar brukere utarbeide testplaner og testsaker innenfor et enkelt strukturert rammeverk. Testlink kan hjelpe deg med å planlegge røyktestene dine, samt skissere dine forventninger og beregninger før du starter røyktestingen.
5. QA Wolf
QA Wolf er et gratis, ende-til-ende-testverktøy som lar brukere lage en automatisert QA-røyktest sammen med andre funksjonstester. QA Wolf kan brukes selv av folk uten tekniske eller kodeferdigheter, noe som betyr at det er en flott introduksjon til testautomatisering for de fleste QA-team.
De beste bedriftsrøyktestverktøyene
Hvis du er forberedt på å investere litt penger i røyktestingsverktøyene dine, kan du kjøpe bedriftsverktøy som har mer omfattende røyktestingsmuligheter og mer grundige resultater.
Nedenfor er en liste over fem av de beste bedriftsrøyktestautomatiseringsverktøyene på markedet.
5 beste bedriftsrøyktestautomatiseringsverktøy
1. ZAPTEST ENTERPRISE-utgaven
ZAPTEST ENTERPRISE-utgaven er en programvaretesting og RPA-pakke som kan fullautomatisere alle typer tester, inkludert røyktesting.
Gratisversjonen passer for mindre selskaper som ønsker å vite hva ZAPTEST kan gjøre, men hvis du leter etter en betalt løsning som er enkel å bruke og egnet for å teste hvilken som helst programvare eller app, på hvilken som helst plattform, nettleser eller enhet, OG med 1SCRIPT implementering på tvers av alle disse, så er ZAPTEST ENTERPRISE et flott sted å starte.
2. SoapUI
SoapUI er et bedriftstestverktøy som gjør det enkelt å administrere og utføre ende-til-ende QA-tester på programvare. Det er et relativt enkelt verktøy å installere, men det har sine begrensninger, noe som gjenspeiles i prispunktet.
3. Testim
Testim er et betalt røyktestverktøy som bruker AI til å lage kodeløse tester som vurderer funksjonaliteten til programvaren din. Testims Javascript API kan brukes til å refaktorere, tilpasse og feilsøke tester.
4. T-Plan Robot
T-Plan Robot er et testverktøy for bedrifter som QA-ingeniører kan bruke til å automatisere skriptede brukerhandlinger og Robotic Process Automation (RPA) på Windows, Mac, Linux og Mobile. Du kan bruke T-Plan Robot til å automatisere røyktester på en rekke applikasjoner og lage automatiserte skript som kan kjøres på nøkkelpunkter under utviklingen.
5. Regnskog QA
Rainforest QA er et QA røyktestverktøy som lar brukere administrere og implementere både manuell og automatisert røyktesting fra ett enkelt dashbord. Dette gjør den ideell for organisasjoner som er interessert i å prøve den hybride tilnærmingen, og den er egnet for et stort utvalg plattformer, inkludert skybaserte applikasjoner, Windows og Mac.
Når bør du bruke bedrift kontra gratis røyktestverktøy?
Enterprise og gratis røyktestverktøy kan oppfylle lignende behov på litt forskjellige måter. Vanligvis fungerer gratisverktøy som en utmerket inngangsport til organisasjoner som er komfortable med manuell røyktesting, men som ønsker å utforske automatisert røyktesting mer detaljert.
De kan også være mer egnet for svært små oppstartsbedrifter der pengene for betalte verktøy bare ikke er der ennå.
Enterprise testverktøy blir vanligvis et mer levedyktig alternativ etter hvert som selskaper utvider seg. De tilbyr en rekke fordeler fremfor gratisverktøy, og tilbyr vanligvis mer fleksibilitet, bedre støtte og mer brukervennlige grensesnitt som gjør det enkelt for selv ikke-tekniske fagfolk å utføre automatisert røyktesting.
Sjekkliste for røyktesting
Før du starter en røyktest, kan QA-teamet for programvaren bruke denne sjekklisten for å sikre at de dekker hvert trinn i røyktestprosessen.
● Identifiser røyktestingsverktøyene du skal bruke
● Velg om du skal lage en manuell eller automatisert test
● Velg testtilfellene du vil teste
● Lag testskript for hvert tilfelle
● Identifiser “bestått”-kravene for hvert testtilfelle
● Kjør røyktestene dine
● Analyser resultatene
● Tilbakemelding til utvikling og kvalitetssikring
Konklusjon
Røyktesting er et viktig skritt i programvareutvikling og kvalitetssikring. Det sikrer at et produkt er funksjonelt før ytterligere testing finner sted, noe som forhindrer risikoen for at QA-team kaster bort tid og ressurser på å utføre intensiv funksjonell testing på bygg som ikke er stabile ennå.
Røyktesting er en relativt rask og enkel prosess som bør utføres av programvareteam så ofte som mulig.
Ettersom virksomheter streber etter å oppnå optimal effektivitet gjennom bruk av avanserte verktøy som støtter hyperautomatisering , RPA og andre relaterte teknologier, blir automatisert røyktesting stadig mer vanlig i organisasjoner av alle størrelser.
Både manuell og automatisert røyktesting har fortsatt en plass i moderne QA-miljøer, men etter hvert som automatisert testing blir mer vanlig, er det ingen tvil om at det vil bli normen.
FAQ og ressurser
Hva er de beste kursene i røyktestautomatisering?
Hvis du vil lære mer om røyktestautomatisering, er noen eksempler på nettkurs du kan ta:
● Coursera røyktestkurs
● Udemy røyktestkurs
● Skillshare røyktestingskurs
Et av de beste kursene for nybegynnere er Certified Tester ISTQB Foundation Level (CTFL), tilgjengelig hos Udemy.
Hver av disse nettbaserte ressursene tilbyr røyktestingskurs for elever med ulike ferdigheter, og det kan være mulig å ta både gratis og betalte kurs på disse sidene.
Hvis du ønsker å bli sertifisert, se etter kurs som er akkreditert av CAST.
Hva er de beste bøkene om røyktesting?
Hvis du vil finne ut mer om røyktesting, kan du lese bøker om programvaretesting og røyktesting for å utvikle din forståelse av tilnærmingene og fordelene med røyktesting. Noen av de beste bøkene om røyktesting inkluderer:
● The Art of Software Testing, av Glenford J Myers, Tom Badgett og Corey Sandler
● Programvaretesting, av Ron Patton
● Software Test Automation, av Mark Fewster og Dorothy Graham
Imidlertid er det mange fantastiske bøker om programvaretesting der ute som kan hjelpe deg å forstå mer om hvordan, hvorfor og hva med testing.
Velg en bok som appellerer til deg og utforsker emnene som interesserer deg mest i detalj.
Hva er de 5 beste intervjuspørsmålene om røyktesting?
Hvis du vurderer å intervjue for en stilling som kan innebære røyktesting, kan du forberede deg på intervjuet ved å klargjøre svarene på vanlige intervjuspørsmål, for eksempel:
● Når er riktig tidspunkt å gjennomføre røyktesting?
● Hvordan vil du bestemme hvilke testtilfeller du skal bruke i en røyktest?
● Hvordan skiller røyktesting seg fra andre typer testing, som fornuftstesting?
● Hvor mye kodekunnskap er nødvendig for å gjennomføre røyktester?
● Hva ville du gjort hvis en røyktest mislykkes?
Hva er de beste YouTube-veiledningene om røyktesting?
Hvis du er en visuell elev, kan du bruke disse YouTube-videoene for å lære mer om røyktesting:
● Edureka røyktestingsveiledning
● Hva er røyktesting?
● Røyktesting vs fornuftstesting
Hvordan vedlikeholde røyktester?
Vedlikehold av røyktester handler om å sikre at røyktestene du lager forblir sunne og relevante mens programvarebyggingsprosjektet fortsetter.
Utfør røyktester daglig og lag nye testtilfeller når og når de trengs.
Du kan også maksimere fordelene med røyktestene dine ved å jobbe tett med de utviklerne hvis bidrag ikke klarer å forbedre kvaliteten på koden deres.
Hva er røyktesting i programvareteknikk?
Røyktesting i programvareteknikk kalles også byggeverifiseringstesting, og det er en enkel og rask test for å sikre at en programvarebygging er stabil.
Røyktesting brukes til å teste kjernefunksjonene til en build, og den fungerer som en foreløpig test før ytterligere QA-testing finner sted.
Røyktesting vs fornuftstesting
Røyk- og tilregnelighetstesting er begge typer testing som involverer rask testing av kjernefunksjonene til en programvarebygging eller et produkt.
Men mens røyktesting tester om kjernefunksjonene til programvaren oppførte seg som forventet eller ikke, brukes tilregnelighetstesting vanligvis for å sjekke om feilreparasjoner har løst identifiserte problemer.
Røyktesting er en mer formell og dokumentert prosess som vanligvis gjøres før en bygg er verifisert som stabil, mens sanitetstesting er en uformell type test som kan utføres som en del av regresjonstesting på relativt stabile bygg.
Røyktesting vs regresjonstesting
Røyk- og regresjonstesting er begge typer testing som sjekker om programvaren fortsatt fungerer som den skal etter at nye endringer er gjort.
Røyktesting er imidlertid en relativt rask og lav dybde type testing som ganske enkelt sjekker kjernefunksjoner og sikrer at programvaren er stabil.
Regresjonstesting er en test på dypere nivå som tar mye lengre tid og vurderer bygget mer detaljert.
Røyktesting vs fornuftstesting vs regresjonstesting
Når du sammenligner røyk- og tilregnelighetstesting med regresjonstesting, er det viktig å forstå at alle disse tre typene tester er nødvendige for god programvareutvikling og QA.
Røyktesting og fornuftstesting gir en rask måte å sjekke om programvaren fungerer normalt, mens regresjonstesting gir dypere innsikt i hvordan produktet fungerer.
QA teams røyktestprogramvare først, og hvis programvaren består denne kontrollen, kan fornuftstesting og senere regresjonstesting finne sted.
Automatisert røyktesting ved bruk av røyktestingsverktøy blir stadig mer vanlig, men noen typer testing, som for eksempel regresjonstesting, er ennå ikke mulig å fullautomatisere på grunn av testens komplekse natur.
Til slutt, hvis du leter etter verktøy for å utføre testing på Windows-plattformer , iOS , Android, UI-tester , Linux og mange flere, fortsett og last ned ZAPTEST GRATIS!