Mis on suitsu testimine?

โšก Nutikas kokkuvรตte

Suitsutestimine otsustab, kas vรคrske versioon on testimiseks piisavalt stabiilne. See leht selgitab, millal seda kรคivitada, kes seda kรคivitab, kuidas tsรผkkel tรถรถtab ja kuidas automatiseeritud komplektid suunavad tรคnapรคevaseid tarnekanaleid.

  • ๐Ÿ” Mรครคratlus: Suitsutestid teevad iga uue ehitise puhul minimaalse hulga kontrolle, et veenduda, et รผkski takistus ei takista edasist testimist.
  • ๐Ÿ•’ ajastus: Kรคivita komplekt kohe, kui jรคrgutรถรถ jรตuab kvaliteedikontrolli vรตi testimiskeskkonda, enne funktsionaalse testimise alustamist.
  • ๐Ÿ‘ค Omandiline kuuluvus: Kvaliteedikontrolli insenerid vรตi kvaliteedikontrolli juht valivad kriitilise funktsionaalsuse ja otsustavad, kas ehitus vastu vรตtta vรตi tagasi lรผkata.
  • ๐Ÿงญ Kriitilised teed: Hoidke sisselogimise, otsingu, andmesisestuse, maksmise ja vรคljalogimise รผhe korraga laiaulatuslik ja pealiskaudne.
  • ๏ธ Kรคitusaja eelarve: Hoidke jooksu umbes kakskรผmmend kuni kolmkรผmmend karpi ja kรผmme kuni viisteist minutit, et vรคrav ei muutuks kunagi pudelikaelaks.
  • โš™๏ธ Automatiseerimine: รœhenda komplekt CI/CD konveieriga, et iga muudatus ja iga juurutamine kontrollitaks ilma kรคsitsi pingutuseta.
  • ๐Ÿšซ Ketendav kontroll: Eemaldage sรตltuvusrohked ja ebajรคrjekindlad juhtumid, sest ebausaldusvรครคrne vรคrav hรคvitab usalduse ehitusotsuse vastu.

Mis on suitsu testimine?

Suitsu testimine on tarkvara testimisprotsess, mis mรครคrab, kas juurutatud tarkvarajรคrk on stabiilne vรตi mitte. Suitsutestimine annab kvaliteedikontrolli meeskonnale kinnituse edasise tarkvara testimise jรคtkamiseks. See koosneb minimaalsetest testide komplektist, mida tehakse igal jรคrgul, et testida tarkvara funktsioone. Suitsutestimist tuntakse ka kui "ehituse kontrollimise testimist" vรตi "kindluse testimist".

Lihtsamalt รถeldes tรคhendab suitsutestimine oluliste funktsioonide toimimise kontrollimist ja testitavas versioonis esinevate takistuste puudumist. See on kiire ja kiire regressioontest, mis hindab peamisi funktsioone. See aitab kindlaks teha, kas versioonis on vigu, mis muudaksid edasise testimise aja ja ressursside raiskamiseks.

Vรตrdlema Suitsu vs terve mรตistuse testimine

Miks me suitsutesti teeme?

Suitsutestimine mรคngib tarkvaraarenduses olulist rolli, kuna see tagab sรผsteemi รตigsuse algstaadiumis. Nii saame testimisvaeva kokku hoida. Alles pรคrast suitsutestimist alustame funktsionaalset testimist.

  • Kรตik ehituse silmapaistvamad elemendid tuvastatakse suitsutesti abil.
  • Suitsutesti abil tuvastatakse enamik defekte algstaadiumis. tarkvaraarenduse.
  • Suitsutestiga lihtsustame suuremate defektide avastamist ja parandamist.
  • Suitsutestide abil saab kvaliteedikontrolli meeskond leida rakenduse funktsionaalsuses vigu, mis vรตisid ilmneda uue koodi tรตttu.
  • Suitsutestide abil leitakse peamised raskusastme vead.

Nรคide 1: Logimise aken: Kui klรตpsate nuppu Esita, saate liikuda jรคrgmisesse aknasse kehtiva kasutajanime ja parooliga.

Nรคide 2: Kasutaja ei saa veebilehelt vรคlja logida.

Millal me suitsutesti teeme?

Need eelised realiseeruvad ainult siis, kui kontroll kรคivitatakse รตigel hetkel. Suitsutestimist tehakse alati, kui tarkvara uusi funktsioone arendatakse ja integreeritakse olemasoleva jรคrguga, mis juurutatakse kvaliteedikontrolli/etenduskeskkonnas. See tagab, et kรตik kriitilised funktsioonid tรถรถtavad รตigesti vรตi mitte. Allolev diagramm nรคitab, kuidas jรคrg jรตuab kvaliteedikontrolli keskkonda enne suitsutestimise algust.

Selle testimismeetodi puhul juurutab arendusmeeskond versiooni kvaliteedikontrolli abil. Testijad vรตtavad alamhulga testjuhtumeid ja kรคivitavad need versiooni kriitiliste funktsionaalsuste suhtes. Need testide seeriad on loodud versioonis esinevate vigade paljastamiseks. Kui need testid lรคbitakse, jรคtkab kvaliteedikontrolli meeskond jรคrgmisega: Funktsionaalne testimine.

Iga rike viitab vajadusele anda sรผsteem tagasi arendusmeeskonnale. Kui ehitust muudetakse, teostame stabiilsuse tagamiseks suitsutesti.

Nรคide: -Sisselogimisaknasse lisatakse uus registreerimisnupp ja ehitamine vรตetakse kasutusele uue koodiga. Teostame suitsutesti uuel hoonel.

Suitsutestid kvalifitseerivad ehituse edasiseks ametlikuks testimiseks ning on loodud sรผsteemi stabiilsuse ja nรตuetele vastavuse demonstreerimiseks. Peamine eesmรคrk on tuvastada olulisi probleeme varakult. Ehitusjรคrk sisaldab kรตiki andmefaile, teeke, korduvkasutatavaid mooduleid ja konstrueeritud komponente, mis on vajalikud รผhe vรตi mitme tootefunktsiooni rakendamiseks.

Mis juhtub, kui me ei tee suitsutesti

Kui me ei tee suitsutesti varajases staadiumis, vรตivad hilisemates etappides ilmneda defektid, mis vรตivad olla kulukad. Defekt Hilisemates etappides avastatud probleemid vรตivad olla takistuseks, mis mรตjutab tulemuste avaldamist.

Kes teeb suitsutesti?

Pรคrast jรคrgu avaldamist kvaliteedikontrolli keskkonda viivad suitsutesti lรคbi kvaliteedikontrolli insenerid / kvaliteedikontrolli juht. Iga kord, kui on olemas uus versioon, mรครคrab kvaliteedikontrolli meeskond suitsutestimiseks rakenduse pรตhifunktsioonid. Kvaliteedikontrolli meeskond kontrollib, kas testitavas rakenduses on tรคkkeid.

Kuidas suitsutesti teha?

Suitsutesti tehakse tavaliselt kรคsitsi, kuigi on vรตimalus seda teha ka automatiseerimise teel. See vรตib organisatsiooniti erineda.

Suitsu kรคsitsi testimine

Suitsutestimise abil tagatakse, et kriitiliste radade navigeerimine toimib ootuspรคraselt ega takista funktsionaalsust. Vรตetakse kasutusele kรตrge prioriteediga funktsionaalsustestid, mida testitakse sรผsteemi kriitiliste defektide leidmiseks. Kui test lรคbib, jรคtkatakse funktsionaalsustestimist. Kui test ebaรตnnestub, lรผkatakse versioon tagasi ja saadetakse parandamiseks arendusmeeskonnale.

QA alustab uuesti suitsutestimist uue jรคrgu versiooniga. Suitsutestimist tehakse uuel jรคrgul ja see integreeritakse vanade jรคrkudega, et sรคilitada sรผsteemi รตigsus. Enne suitsutestimist peaks QA meeskond kontrollima รตigeid jรคrgu versioone.

Suitsu testimine automatiseeritud meetodil

Automatiseerimise testimine kasutatakse RegressioonitestimineSiiski saame Smoke Testi vastu vรตitlemiseks kasutada ka automatiseeritud testide komplekti. Automaattestide abil saavad arendajad koheselt ehitust kontrollida, kui on olemas uus ehitus, mis on juurutamiseks valmis.

Selle asemel, et iga uue tarkvarajรคrgu juurutamisel kรคsitsi testida, kรคivitatakse jรคrguga salvestatud suitsutestijuhtumid. See kontrollib, kas peamised funktsioonid tรถรถtavad ikka korralikult. Kui test ebaรตnnestub, saavad nad jรคrgu parandada ja jรคrgu kohe รผmber paigutada. Sellega saame sรครคsta aega ja tagada kvaliteedikontrolli keskkonna kvaliteetse ehituse.

Automaattรถรถriista kasutades salvestab testinsener kรตik kรคsitsi tehtud sammud, mis tarkvara koostamisel tehakse.

Suitsu testimise tsรผkkel

Allolev vooskeem nรคitab, kuidas suitsutestimist teostatakse. Kui jรคrgukood on kvaliteedikontrollis juurutatud ja suitsutestid on edukad, jรคtkame funktsionaalse testimisega. Kui suitsutest ebaรตnnestub, vรคljume testimisest, kuni jรคrgukood on viga lahendatud.

Suitsutestide juhtumite kavandamise parimad tavad

Tsรผkli tundmine on รผks asi; keeping Usaldusvรครคrset lahendust pakub hoopis teine โ€‹โ€‹variant. Suitsukomplekt teenib oma koha ainult siis, kui see on kompaktne, kiire ja korratav.

  • Kรตigepealt kaardistage kriitilised teed: Loetlege tรถรถvood, mis muudavad toote kommertskasutatavaks, nรคiteks sisselogimine, otsing, andmesisestus, maksmine ja vรคljalogimine. Kui รผks neist katki lรคheb, pole versioonil testija jaoks mingit vรครคrtust.
  • Hoidke sviit madalana, aga laiana: Puuduta iga suuremat moodulit รผks kord, selle asemel, et รผhte moodulit pรตhjalikult uurida. Piirvรครคrtused, negatiivsed andmed ja veateadete sรตnastus kuuluvad funktsionaalsesse testimisse, mitte siia.
  • Piira tรคitmisaega: Enamik meeskondi hoiab jooksuaega kรผmme kuni viisteist minutit ja piirab komplekti umbes kahekรผmne kuni kolmekรผmnega. testjuhtumidTunni kestev jooks lakkab olemast vรคrav ja muutub pudelikaelaks.
  • Kรคivita samad juhtumid igas versioonis: Jรคrjepidevus vรตimaldab omistada ebaรตnnestumise koodile, mitte muudetud testivalikule.
  • Eemalda ebaรผhtlased ja sรตltuvusrohked juhtumid: Juhtum, mis ilma koodi muutmata nii lรคbi lรคheb kui ka lรคbi kukub, hรคvitab usalduse teenuse osutamise sรผsteemi. Ebastabiilsete kolmandate osapoolte teenuste tรผkeldamine vรตi imiteerimine, kus testide automatiseerimise raamistik lubab.
  • Salvesta รผks รผhemรตtteline otsus: Igal juhul on vaja รผhte eeldatavat tulemust, et ehitust saaks vaidluseta vastu vรตtta vรตi tagasi lรผkata.
  • Versioonige komplekt jรคrgmise versiooniga: Hoidke suitsujuhtmeid samas hoidlas kui rakenduskoodi, et vรคrav vastaks alati testitavale vรคljalaskele.

RevVaadake komplekti iga vรคljaande kohta: eemaldage enam ebaoluliste funktsioonide hooldusjuhtumid ja lisage uusi kriitilisi tรถรถvooge.

Suitsu testimine CI/CD torujuhtmetes

Sel viisil loodud pakett on piisavalt odav, et tรถรถtada iga commit'i korral, mis ongi tรคnapรคevaste tarnete nรตuete kohane. pidev integratsioon server, nรคiteks Jenkins kompileerib koodi, juurutab selle testimiskeskkonda ja seejรคrel kรคivitab esimese automatiseeritud etapina suitsukomplekti. Roheline kรคivitamine edastab artefakti funktsionaalsesse ja regressioonietappi, punane kรคivitamine aga nurjub torujuhtmes ja teavitab sellest mรตne minuti jooksul pรผhendunud arendajat.

Kaks paigutust on levinud. Eelรผhendamise kรคivitamine kaitseb peaharu, valideerides iga pull-requesti, ja pรคrast juurutamist kinnitab, et juurutatud keskkond on kรคttesaadav ja รตigesti konfigureeritud. Pidevat juurutamist harrastavad meeskonnad lisavad sageli kohe pรคrast vรคljaandmist kolmanda, kรคrbitud kรคivitamise tootmiskeskkonna vastu.

Kuna konveier kรคivitab komplekti mitu korda pรคevas, peavad juhtumid olema mitte-interaktiivsed, isepuhastuvad ja sรตltumatud. Iga juhtum, mis ootab inimese otsust vรตi jรคtab testandmeid alles, peatab konveieri.

Suitsu testimise eelised

Siin on mรตned suitsutestimise eelised.

  • Lihtne teostada ja tรถรถtab kiiresti
  • Kriitilisi vigu ja defekte on varajases staadiumis lihtne tuvastada ja parandada.
  • Parandab sรผsteemi kvaliteeti
  • Vรคhendab riski
  • Edusamme on lihtsam hinnata.
  • Sรครคstab testimise vaeva ja aega
  • Minimeerib integratsiooniriskid

โš  Mรคrkimist vรครคriv piirang: Lรคbimรตeldud suitsutest nรคitab vaid, et ehitus on testitav. See puudutab peamisi funktsionaalsusi pealiskaudselt, seega jรครคvad vรคiksemad defektid, servajuhud ja harva kasutatavad funktsioonid varjatuks kuni funktsionaalse ja regressioonitestimiseni. ร„rge kunagi kรคsitlege rohelist suitsu tulemust mรคrgina, et ehitus on defektideta.

Suitsutestimine vs. mรตistuse testimine vs. regressioonitestimine

Kรตik kolm kรคivituvad pรคrast koodi muutmist, mistรตttu neid sageli segamini aetakse. Need erinevad ulatuse, sรผgavuse ja igaรผhe vastuse poolest.

Koodi testimine arenduskeskkonnas, et tagada rakenduse รตigsus enne versiooni avaldamist kvaliteedikontrolli osakonnas, on tuntud kui mรตistlikkuse testimine. See on protsess, mis kontrollib, kas arendatav rakendus vastab oma pรตhilistele funktsionaalsetele nรตuetele.

Terve mรตistuse testimine mรครคrab arendusfaasi lรตpuleviimise ja teeb otsuse, kas lรคbida vรตi mitte lรคbida tarkvaratoode edasise testimisetapi jaoks.

ALUS SUITSU TESTIMINE Mร•ISTLIKU TERVISE KONTROLL Regressioonitestimine
Ulatus Lai ja madal Kitsas ja sรผgav Lai ja sรผgav
Kรผsimusele vastati Kas see konstruktsioon on testimiseks piisavalt stabiilne? Kas see konkreetne parandus toimib? Kas midagi, mis varem tรถรถtas, katki lรคks?
Jada Esiteks, iga ehituse puhul Pรคrast suitsutesti lรคbimist Pรคrast mรตistuse kontrollimist
Tรผรผpiline kestus 10 kuni 15 minutit 30 kuni 60 minutit Hours pรคevade kaupa
Automaatika sobivus Vรคga kรตrge Mรตรตdukas, sageli kรคsitsi tehtav Vรคga kรตrge

Praktikas toimivad need jรคrjekorras: suitsutestimine ehituse vastuvรตtmiseks, mรตistlikkuse testimine esitatud muudatuse kontrollimiseks ja regressioonitestimine, kui ajakava lubab.

Nรคidissuitsu katsejuhtumite nรคide

Allolev tabel dokumenteerib lรผhikest suitsukomplekti, รผks rida kriitilise tee kohta.

T.ID TESTSTSENAARIUMID KIRJELDUS KATSETAMINE OODATUD TULEMUS TEGELIK TULEMUS STATUS
1 Kehtivad sisselogimismandaadid Testige veebirakenduse sisselogimise funktsionaalsust veendumaks, et registreeritud kasutajal on lubatud kasutajanime ja parooliga sisse logida 1.Kรคivitage rakendus
2. Navigeerige sisselogimislehel
3.Sisestage kehtiv kasutajanimi
4.Sisestage kehtiv parool
5. Klรตpsake sisselogimisnupul
Sisselogimine peaks รตnnestuma ootuspรคraselt Sooritama
2 Kauba funktsionaalsuse lisamine Vรตimalik lisada รผksus ostukorvi 1. Valige kategooriate loend
2. Lisage toode ostukorvi
Kaup tuleks lisada ostukorvi Kaupa ei lisata ostukorvi Fail
3 Vรคljalogimise funktsioon Kontrollige vรคljalogimise funktsioone 1. valige vรคljalogimise nupp Kasutajal peaks olema vรตimalik vรคlja logida. Kasutaja ei saa vรคlja logida Fail

KKK

Nimi tuleneb riistvaratehnikast, kus รคsja kokkupandud seade lรคbis esimese kontrolli, kui see sisselรผlitamisel suitsu ei eraldanud. Tarkvara laenas idee: kui konstruktsioon lรคbib kiire sisselรผlituskontrolli, vรตib alustada pรตhjalikumat testimist.

Enamik meeskondi lepib kahekรผmne ja kolmekรผmne juhtumiga, kusjuures praktiline alammรครคr on kรผmme ja รผlempiir viiskรผmmend. Tegelik piirang on aeg: kui tรคisperiood รผletab viisteist minutit, siis kรคrbitakse juhtumeid, kuni see sobib.

Jah. Tehisintellekti tรถรถriistad suudavad lugeda nรตudeid, kasutajalugusid vรตi tootmisliikluse logisid ning pakkuda vรคlja suurima liiklusega kriitilisi teid potentsiaalsete suitsujuhtumite kandidaatidena. Kvaliteedikontrolli insener peab valiku ikkagi heaks kiitma, sest mudel ei suuda hinnata รคririski.

See aitab mรคrkimisvรครคrselt. Isetervenevad lokaatorid tรคnapรคevastes automatiseerimise testimise tรถรถriistad tuvastab teisaldatud vรตi รผmbernimetatud elemendi uuesti, selle asemel et see ebaรตnnestuks, mis vรคlistab valehรคired, mis muudavad suitsuvรคrava ebausaldusvรครคrseks. RevVaadake iga paranenud lokaatorit enne selle usaldamist.

Selenium ja Cypress brauserivoogude katmine, Postman ja SoapUI katta API lรตpp-punktid ja JUnit, TestNG, PyTest vรตi Jest pakuvad selleks paketti. Robot Framework sobib mรคrksรตnapรตhistele meeskondadele.

Vรตta see postitus kokku jรคrgmiselt: