Mitä savutestaus on?
⚡ Älykäs yhteenveto
Savutestaus ratkaisee, onko uusi rakenne riittävän vakaa testattavaksi. Tällä sivulla selitetään, milloin testaus suoritetaan, kuka sen suorittaa, miten sykli toimii ja miten automatisoidut ratkaisut ohjaavat nykyaikaisia toimitusputkia.

Mitä savutestaus on?
Savun testaus on ohjelmiston testausprosessi, joka määrittää, onko käytössä oleva ohjelmistoversio vakaa vai ei. Savutestaus on vahvistus QA-tiimille jatkaa ohjelmistotestausta. Se koostuu minimaalisista testeistä, jotka suoritetaan jokaisessa versiossa ohjelmiston toimivuuden testaamiseksi. Savutestaus tunnetaan myös nimellä "Build Verification Testing" tai "Confidence Testing".
Yksinkertaisesti sanottuna savutestaus tarkoittaa tärkeiden ominaisuuksien toiminnan varmistamista eikä testattavassa versiossa ole yllätyksiä. Se on nopea ja nopea regressiotesti tärkeimmille toiminnoille. Tämä auttaa selvittämään, onko versiossa virheitä, jotta jatkotestaus olisi ajan ja resurssien tuhlausta.
Verrata Savu vs mielenterveystesti
Miksi teemme savutestejä?
Savutestaus on tärkeässä roolissa ohjelmistokehityksessä, koska se varmistaa järjestelmän oikeellisuuden alkuvaiheissa. Tällä tavoin voimme säästää testaustyötä. Vasta kun savutestaus on suoritettu, aloitamme toiminnallisen testauksen.
- Kaikki rakennuksen näytöskohteet tunnistetaan savutestauksen avulla.
- Savutestauksen avulla useimmat viat tunnistetaan alkuvaiheessa ohjelmistokehitys.
- Savutestauksella yksinkertaistamme suurten vikojen havaitsemista ja korjaamista.
- Savutestauksen avulla laadunvarmistustiimi voi löytää sovelluksen toimivuudesta vikoja, joita uusi koodi on saattanut ilmetä.
- Savutestaus löytää suurimmat vakavuusvirheet.
Esimerkki 1: Kirjausikkuna: Voit siirtyä seuraavaan ikkunaan kelvollisella käyttäjätunnuksella ja salasanalla napsauttamalla Lähetä-painiketta.
Esimerkki 2: Käyttäjä ei pysty kirjautumaan ulos verkkosivulta.
Milloin teemme savutestin?
Nämä hyödyt toteutuvat vain, jos tarkistus käynnistetään oikeaan aikaan. Savutestaus tehdään aina, kun ohjelmiston uusia toimintoja kehitetään ja integroidaan olemassa olevaan koontiversioon, joka otetaan käyttöön laadunvarmistus-/testausympäristössä. Se varmistaa, että kaikki kriittiset toiminnot toimivat oikein tai eivät. Alla oleva kaavio näyttää, miten koontiversio saapuu laadunvarmistusympäristöön ennen savutestauksen aloittamista.
Tässä testausmenetelmässä kehitystiimi ottaa käyttöön koontiversion laadunvarmistuksessa (QA). Testaajat ajavat joukon testitapauksia, jotka vertaavat version kriittisiä toimintoja. Nämä testisarjat on suunniteltu paljastamaan koontiversiossa olevia virheitä. Jos nämä testit läpäistään, laadunvarmistustiimi jatkaa… Toiminnallinen testaus.
Kaikki viat osoittavat, että järjestelmä on palautettava kehitystiimille. Aina kun rakennetta muutetaan, suoritamme savutestauksen vakauden varmistamiseksi.
esimerkki: -Uusi rekisteröintipainike lisätään kirjautumisikkunaan ja koonti otetaan käyttöön uudella koodilla. Suoritamme savutestausta uudelle rakennukselle.
Savutestit kelpuuttavat koontiversion jatkotestaukseen ja niiden tarkoituksena on osoittaa järjestelmän vakaus ja vaatimustenmukaisuus. Päätavoitteena on havaita merkittävät ongelmat varhaisessa vaiheessa. Koontiversio sisältää kaikki datatiedostot, kirjastot, uudelleenkäytettävät moduulit ja suunnitellut komponentit, joita tarvitaan yhden tai useamman tuotetoiminnon toteuttamiseen.
Mitä tapahtuu, jos emme suorita savutestausta
Jos emme suorita savutestausta alkuvaiheessa, myöhemmissä vaiheissa voi ilmetä vikoja, jotka voivat tulla kalliiksi. Vika Myöhemmissä vaiheissa löydetty ongelma voi olla pysäyttävä tekijä, joka vaikuttaa tuotosten julkaisuun.
Kuka tekee savutestauksen?
Kun koontiversio on julkaistu laadunvarmistusympäristöön, laadunvarmistusinsinöörit / laadunvarmistusjohtaja suorittavat savutestauksen. Aina kun versiota tehdään, laadunvarmistustiimi määrittää sovelluksen tärkeimmät toiminnot savutestauksen suorittamiseksi. Laadunvarmistustiimi tarkistaa, onko testattavana olevassa sovelluksessa näytteitä.
Miten savutestaus tehdään?
Savutestaus tehdään yleensä manuaalisesti, vaikka se on mahdollista suorittaa automatisoinnin avulla. Se voi vaihdella organisaatioittain.
Manuaalinen savutestaus
Savutestausta suoritetaan sen varmistamiseksi, että kriittisten polkujen navigointi toimii odotetusti eikä estä toiminnallisuutta. Korkean prioriteetin toiminnallisuustestitapaukset testataan kriittisten vikojen löytämiseksi järjestelmästä. Jos testi läpäisee, jatkamme toiminnallista testausta. Jos testi epäonnistuu, koonti hylätään ja lähetetään takaisin kehitystiimille korjattavaksi.
Laadunvarmistus aloittaa savutestauksen uudelleen uudella koontiversiolla. Savutestaus suoritetaan uusille koontiversioille ja se integroidaan vanhoihin koontiversioihin järjestelmän oikeellisuuden ylläpitämiseksi. Ennen savutestauksen suorittamista laadunvarmistustiimin tulee tarkistaa oikeat koontiversiot.
Savutestaus automaatiolla
Automaatiotestaus käytetään RegressiotestausVoimme kuitenkin käyttää myös joukkoa automatisoituja testitapauksia Smoke Testiä vastaan. Automaatiotestien avulla kehittäjät voivat tarkistaa koontiversion välittömästi, kun uusi koontiversio on valmis käyttöönottoa varten.
Sen sijaan, että testattaisiin manuaalisesti aina, kun uusi ohjelmistoversio otetaan käyttöön, tallennetut savutestitapaukset suoritetaan koontiversiota vastaan. Se tarkistaa, toimivatko tärkeimmät toiminnot edelleen kunnolla. Jos testi epäonnistuu, he voivat korjata koontiversion ja ottaa sen uudelleen käyttöön välittömästi. Tällä voimme säästää aikaa ja varmistaa laadunvarmistusympäristön laadukkaan rakentamisen.
Automaattisen työkalun avulla testiinsinööri kirjaa kaikki manuaaliset vaiheet, jotka suoritetaan ohjelmiston koontiversiossa.
Savutestaussykli
Alla oleva vuokaavio näyttää, miten savutestaus suoritetaan. Kun koontiversio on otettu käyttöön laadunvarmistuksessa ja savutestit ovat läpäisseet, siirrymme toiminnalliseen testaukseen. Jos savutesti epäonnistuu, lopetamme testauksen, kunnes koontiversion ongelma on korjattu.
Savutestitapausten suunnittelun parhaat käytännöt
Syklin tunteminen on yksi asia; pidäping Luotettavan laitteen ominaisuus on toinen. Savukäyttöinen laite ansaitsee paikkansa vain, jos se on kompakti, nopea ja toistettavissa.
- Kartoita ensin kriittiset polut: Listaa työnkulut, jotka tekevät tuotteesta kaupallisesti käyttökelpoisen, kuten kirjautuminen, haku, tietojen syöttö, maksaminen ja uloskirjautuminen. Jos yksi niistä epäonnistuu, buildillä ei ole arvoa testaajalle.
- Pidä sviitti matalana mutta leveänä: Käsittele jokaista päämoduulia kerran sen sijaan, että tutkisit yhtä moduulia perusteellisesti. Raja-arvot, negatiivinen data ja virheilmoitusten sanamuodot kuuluvat toiminnalliseen testaukseen, eivät tänne.
- Rajoita suoritusaikaa: Useimmat joukkueet pitävät juoksun kymmenestä viiteentoista minuuttiin ja rajoittavat sarjan noin kahteenkymmeneen tai kolmeenkymmeneen minuuttiin. testitapauksetTunnin kestävä juoksu lakkaa olemasta portti ja muuttuu pullonkaulaksi.
- Suorita samat tapaukset jokaisessa koontiversiossa: Johdonmukaisuuden avulla voit selittää epäonnistumisen koodin ansioksi muuttuneen testivalinnan sijaan.
- Poista epätasaiset ja riippuvuuksia sisältävät tapaukset: Tapaus, joka sekä hyväksytään että hylätään ilman koodimuutoksia, tuhoaa luottamuksen porttia kohtaan. Tyhjennä tai teeskentele epävakaita kolmannen osapuolen palveluita, joissa testiautomaatiokehys sallii.
- Kirjaa yksi yksiselitteinen tuomio: Jokaisella tapauksella on oltava yksi odotettu tulos, jotta rakennelma voidaan hyväksyä tai hylätä ilman keskustelua.
- Versioi ohjelmisto kokoonpanolla: Säilytä savutapaukset samassa arkistossa kuin sovelluskoodi, jotta portti vastaa aina testattavaa vapautusta.
RevTarkastele ohjelmistopakettia jokaisessa julkaisussa: poista käytöstä ominaisuuksien tukipyynnöt, joilla ei enää ole merkitystä, ja lisää uusia kriittisiä työnkulkuja.
Savutestaus CI/CD-putkistoissa
Tällä tavalla suunniteltu ohjelmistopaketti on riittävän halpa toimiakseen jokaisen commitin yhteydessä, mikä on nykyaikaisen toimituksen vaatimus. jatkuva integrointi palvelin, kuten Jenkins kääntää koodin, julkaisee sen testiympäristössä ja käynnistää sitten smoke-paketin ensimmäisenä automatisoituna vaiheena. Vihreä ajo siirtää artefaktin toiminnalliseen ja regressiovaiheeseen, kun taas punainen ajo katkaisee prosessin ja ilmoittaa sitoutuvalle kehittäjälle asiasta muutamassa minuutissa.
Kaksi yleistä sijoittelua on käytössä. Yhdistämistä edeltävä ajo suojaa päähaaraa validoimalla jokaisen pull-pyynnön, ja käyttöönoton jälkeinen ajo varmistaa, että käyttöönotettu ympäristö on saavutettavissa ja konfiguroitu oikein. Jatkuvaa käyttöönottoa harjoittavat tiimit lisäävät usein kolmannen, lyhennetyn ajon tuotantoympäristöä vastaan heti julkaisun jälkeen.
Koska prosessi suorittaa pakettia useita kertoja päivässä, tapausten on oltava ei-interaktiivisia, itsepuhdistuvia ja riippumattomia. Kaikki tapaukset, jotka odottavat ihmisen päätöstä tai jättävät testidataa jälkeensä, pysäyttävät proseduurin.
Savutestauksen edut
Tässä on muutamia savutestauksen etuja.
- Helppo suorittaa ja toimii nopeasti
- Kriittiset virheet ja viat on helppo havaita ja korjata alkuvaiheessa.
- Parantaa järjestelmän laatua
- Vähentää riskiä
- Edistymistä on helpompi arvioida.
- Säästää testityötä ja aikaa
- Minimoi integraatioriskit
⚠ Huomioitavaa rajoitusta: Läpäissyt savutestaus osoittaa vain, että kokoonpano on testattavissa. Se käsittelee tärkeimpiä toiminnallisuuksia pinnallisesti, joten pienet viat, reunatapaukset ja harvoin käytetyt ominaisuudet pysyvät piilossa, kunnes toiminnallinen ja regressiotestaus on suoritettu. Älä koskaan pidä vihreää savutestaustulosta merkkinä siitä, että kokoonpano on virheetön.
Savutestaus vs. järkiperäisyystestaus vs. regressiotesti
Kaikki kolme suoritetaan koodinmuutoksen jälkeen, minkä vuoksi ne sekoitetaan usein. Ne eroavat toisistaan laajuuden, syvyyden ja kunkin vastauksen suhteen.
Koodia testataan kehitysympäristössä sovelluksen oikeellisuuden varmistamiseksi ennen sen julkaisemista laadunvarmistukseen. Tätä kutsutaan järkevyystestaukseksi. Se on prosessi, jolla varmistetaan, että kehitteillä oleva sovellus täyttää perustoiminnalliset vaatimukset.
Sanity-testaus määrittää kehitysvaiheen valmistumisen ja tekee päätöksen, hyväksytäänkö ohjelmistotuotteen jatkotestausvaiheeseen vai ei.
| BASIS | SAVUTESTAUS | JÄRKEVYYSTESTAUS | REGRESSIOTESTAUSTA |
|---|---|---|---|
| Laajuus | Leveä ja matala | Kapea ja syvä | Leveä ja syvä |
| Kysymykseen vastattu | Onko tämä kokoonpano tarpeeksi vakaa testattavaksi? | Toimiiko tämä erityinen korjaus? | Menikö jokin ennen toiminut hajalle? |
| Järjestys | Ensinnäkin, jokaisella rakennuskerralla | Savutestin läpäisyn jälkeen | Mielenterveystestin jälkeen |
| Tyypillinen kesto | 10 - 15 minuuttia | 30 - 60 minuuttia | Hours päiviin asti |
| Automaatiosopivuus | Erittäin korkea | Keskitasoinen, usein manuaalinen | Erittäin korkea |
Käytännössä ne suoritetaan peräkkäin: savutestaus koontiversion hyväksymiseksi, järkevyystestaus toimitetun muutoksen varmistamiseksi ja regressiotestaus, kun aikataulu sallii.
Esimerkki savutestitapauksista Esimerkki
Alla oleva taulukko dokumentoi lyhyen savusarjan, yksi rivi kriittistä polkua kohden.
| T.ID | TESTISKENARIOT | KUVAUS | TESTIVAIHE | ODOTETTU TULOS | TODELLINEN TULOS | STATUS |
|---|---|---|---|---|---|---|
| 1 | Kelvolliset kirjautumistiedot | Testaa verkkosovelluksen kirjautumistoimintoja varmistaaksesi, että rekisteröity käyttäjä voi kirjautua sisään käyttäjätunnuksella ja salasanalla | 1.Käynnistä sovellus 2.Navigoi kirjautumissivulla 3. Anna kelvollinen käyttäjätunnus 4. Anna kelvollinen salasana 5. Napsauta kirjautumispainiketta |
Kirjautumisen pitäisi onnistua | odotetusti | Siirtää |
| 2 | Tuotetoimintojen lisääminen | Mahdollisuus lisätä tavaraa ostoskoriin | 1. Valitse luokkaluettelo 2.Lisää tuote ostoskoriin |
Tuote pitäisi lisätä ostoskoriin | Tuotetta ei lisätä ostoskoriin | Epäonnistua |
| 3 | Uloskirjautumistoiminto | Tarkista uloskirjautumistoiminnot | 1. Valitse uloskirjautumispainike | Käyttäjän tulee pystyä kirjautumaan ulos. | Käyttäjä ei voi kirjautua ulos | Epäonnistua |


