Kombinatorinen testaus

helmi 24, 2020

Johdanto:

nykyään ohjelmistojärjestelmät ovat moninaisia sekä monimutkaisia ja niillä on monia mahdollisia konfiguraatioita. Nämä ominaisuudet ja ominaisuudet ohjelmistojärjestelmissä ovat avanneet kysyntää ohjelmistoille ja sovelluksille, jotka ovat yksilöllisesti suunniteltuja ja joilla on innovatiivisia sekä luovia ominaisuuksia. Näiden lisäksi asiakkaat ja käyttäjät vaativat myös eksponentiaalista suorituskykyä, toiminnallisuutta, laatua, skaalautuvuutta, tehokkuutta ja paljon muuta. Näiden tavoitteiden saavuttamiseksi ja asiakkaiden ja kuluttajien vaatimusten täyttämiseksi ohjelmistoinsinöörit käyttävät erilaisia innovatiivisia tekniikoita ja menetelmiä tuotteen kehittämiseksi sekä tiukan testauksen suorittamiseksi, sillä riittämättömällä testauksella julkaistut tuotteet voivat aiheuttaa korjaamatonta vahinkoa ja menetyksiä asiakkaalle sekä käyttäjälle, joka asentaa sovelluksen tai käyttää ohjelmistoa. Lisäksi se voi myös aiheuttaa ruumiillista vahinkoa, joka voi johtaa suuriin taloudellisiin menetyksiin tai tietoturvaloukkauksiin sekä vaikuttaa päivittäisen elämän laatuun. Ohjelmistotestaajilla on kuitenkin usein rajallinen aika ja budjetti, minkä vuoksi ohjelmistojen tyhjentävä testaus on usein mahdotonta. Lisäksi testaajat testaavat usein intuitiivisesti ennakoimiaan vikoja, kun taas vähemmän ennakoituja vikoja ei oteta huomioon eikä testata. Paras tapa selvitä tällaisesta tilanteesta on toteuttaa kombinatorinen testaus ohjelmistoissa ja sovelluksissa. Kombinatorinen testaus on lähestymistapa, jolla voidaan systemaattisesti tutkia järjestelmän asettamista hallittavassa määrässä testejä ja kattamalla systemaattisesti t-way-vuorovaikutukset. Siksi tässä on selitetty keskustelua kombinatorisista testaus, määritellä sen merkitys, menetelmiä ja muita merkittäviä ominaisuuksia.

Describing Combinatorial Testing:

Combinatorial Testing on nyt käytännöllinen lähestymistapa, joka tuottaa korkealaatuista testausta halvemmalla. Se hajottaa raakaa voimaa vaiheiksi hyökätä ongelman vähitellen erottamalla analyysi-ja synteesitoiminnot, jotka voidaan kvantifioida ja seurata, ja osittain tuetaan työkaluja. Lisäksi kombinatorinen testaus on erittäin helppo soveltaa. Spesifikaatioon perustuvana tekniikkana se ei vaadi tietoa testattavasta toteutuksesta. Kombinatorinen testaus perustuu oletukseen, että monet virheet ohjelmistoissa voivat syntyä vain kahden tai useamman parametrin vuorovaikutuksesta. Siksi kombinatorinen testaus on tehokas tekniikka testata ohjelmistoja, joilla on useita konfiguraatioparametreja. Sitä käytetään pääasiassa parametrien yhdistelmän aiheuttamien vuorovaikutusvikojen havaitsemiseen. Kombinatorisella testauksella syntyvällä testityypillä pyritään tuottamaan peite, joka kattaa kaikki t-way-parametrien yhdistelmät, joissa ” t ” on annettu peittolujuus. Kombinatorisia peruskokeita voidaan käyttää kahdella tavalla, joita voidaan käyttää joko erikseen tai samanaikaisesti. Nämä tavat ovat:

  • konfiguraatioarvojen tai parametrien yhdistelmät, joissa kattavia ryhmiä käytetään konfiguroitavien parametrien arvojen valitsemiseen, mahdollisesti samojen testien avulla, joita käytetään kaikkia konfiguraatioyhdistelmiä vastaan.
  • kattavat ryhmät valitaan syöttötietojen arvoista, joista sitten tulee osa täydellisiä testitapauksia, jolloin sovellukselle luodaan testipuku. Tämän kombinatorisen testauksen soveltaminen reaalimaailman ohjelmistoon on haastavaa, koska se tarjoaa korkeamman vuorovaikutusasteen, jota varten voidaan vaatia hyvin suuria testejä.

kombinatoristen Testipukujen tuottamiseen käytetyt menetelmät:

kombinatoristen testien suosio on kasvanut huomattavasti viime vuosina. Koska sen lukuisia etuja sitä käytetään ohjelmistojen testaajat eri testaus tasoilla. Mallista, yksiköstä, integroinnista, järjestelmästä ja hyväksymistestauksesta mustaan, valkoiseen, mallipohjaiseen testaukseen ja muuhun testaajat toteuttavat kombinatorisia testejä saadakseen tehokkaita tuloksia kustannustehokkaalla nopeudella. Lisäksi tuottaakseen testipukuja kombinatorisiin testeihin ohjelmistoinsinöörit käyttävät laajaa valikoimaa työkaluja, mikä yksinkertaistaa ohjelmistojen testausprosessia entisestään. Nämä kombinatoriset testipuvut tarjoavat suuremman t-way-kattavuuden, vaikka suurempien t-ways-kattavuuden ryhmien tuottaminen voi kuluttaa merkittäviä laskennallisia resursseja ja tuottaa suuria tuloksia. Lisäksi suurin osa kombinatorisen testauksen algoritmeista keskittyy 2-suuntaisen testauksen erikoistapaukseen. Myös koepuvun rakentamiseen kombinatorista testausta varten manuaalisesti käytetään kolmea menetelmää. Nämä menetelmät tarjoavat erilaisia etuja testaajalle ja varmistavat, että tuotos on mahdollisimman tarkka. Nämä menetelmät / algoritmit ovat:

  1. algebrallinen menetelmä: tämä tarjoaa tehokkaita konstruktioita suhteessa aikaan, mutta on vaikea tuottaa tarkkoja tuloksia laaja ja yleinen erilaisia panoksia.
  2. Ahne Algoritmi: Nämä ovat hyvin tutkittu tyyppi algoritmi rakentamiseen kattavat taulukot, koska ne on todettu suhteellisen tehokas suhteen aikaa ja tarkkuutta.
  3. heuristinen haku: heuristinen haku erityisesti, vaikka stimuloidun hehkutuksen (SA) soveltaminen on antanut tarkimmat tulokset useissa tapauksissa. Tämä paikallinen hakumenetelmä on tarjonnut monia pienimpiä testisarjoja eri järjestelmäkokonaisuuksille; kuitenkin suoritusajan kustannuksella testisarjojen luomiseksi.

Pairwise-Testaus:

yleisesti tunnettu all-pair-testaus, pairwise-testaus on kombinatorinen ohjelmistotestausmenetelmä, jossa jokaista järjestelmään syötettyä parametriparia kohti testataan kaikki mahdolliset näiden parametrien erilliset yhdistelmät. Se on testi suunnittelu tekniikka, joka tarjoaa sataprosenttisen testin kattavuus. Ohjelman yleisimmät viat löytyvät ja käynnistyvät yleensä joko syöttöparametrin tai parin parametrin vuorovaikutuksesta. Bugeja, joihin liittyy vuorovaikutusta kolmen tai useamman parametrin välillä, ovat sekä asteittain harvinaisempia että vähitellen kalliimpia löytää, tällainen testaus on rajana kaikkien mahdollisten syötteiden testaamisessa. Tässä tapauksessa kombinatorinen tekniikka testitapausten, kuten all pair, poimimiseen on erittäin hyödyllinen kustannushyötykompromissi, joka mahdollistaa testitapausten määrän merkittävän vähentämisen vaarantamatta merkittävästi toiminnallista kattavuutta. Siksi pairwise testaus tekniikka on erittäin hyödyllinen suunniteltaessa testi sovelluksia, joissa on useita parametreja. Sen testipuku kattaa kaikki yhdistelmät, joten se ei ole tyhjentävä, mutta silti erittäin tehokas vikojen löytämisessä. Vaikka pairwise-testaus voi dramaattisesti vähentää yhdistelmiä, se on edelleen todella tehokas vikojen havaitsemisen kannalta ja on todellakin älykäs testisuunnittelutekniikka, joka lupaa parhaat testiponnistelut ja poikkeuksellisen tehokkuuden.

Kombinatorisen testauksen hyödyt:

edellä esitetty kombinatorista testausta koskeva keskustelu kuvastaa sen merkitystä ja hyödyllisyyttä. Se on yksi tehokkaimmista ohjelmistojen testaus tekniikka, koska se testaa ohjelmisto useita konfiguroitavissa parametreja. Lisäksi yhdistelmätestauksen avulla voidaan helposti havaita parametrien yhdistelmän aiheuttamat vuorovaikutusviat. Toinen tämän tyyppisen testauksen etu on se, että se tuottaa korkealaatuista testausta erittäin kustannustehokkaalla nopeudella, mikä ei ainoastaan auta ohjelmistokehittäjiä ja testaajia, vaan myös hyödyttää organisaatiota, jolle tuotetta kehitetään. Siksi tämän lähestymistavan muita etuja ovat:

  • käsittelee kattavuusongelmia testisuunnitelmaa määriteltäessä.
  • mahdollistaa testauksen systemaattisen suunnittelun.
  • voidaan soveltaa käytännössä mihin tahansa ohjelmistoon ja abstraktioiden eri tasoille.
  • suurempi testipeitto ja parempi laadunvarmistus.
  • ei vaadi pääsyä sisäiseen lähdekoodiin SUT.
  • se maksimoi kunkin testatun skenaarion arvon.
  • testien määrä väheni merkittävästi.
  • sillä voidaan hallita riskejä ja se on helppo tarkistaa.

johtopäätös:

ohjelmistojärjestelmät ovat monimutkaisia ja voivat aiheuttaa eksponentiaalisen määrän mahdollisia testejä. Mikä tahansa tuote, joka vapautetaan ilman asianmukaista testausta, voi olla merkittävä vaara sekä organisaatiolle että käyttäjälle. Siksi, sen varmistamiseksi, että tällaista tilannetta tai ongelmaa ei tapahdu ohjelmiston julkaisun jälkeen, ohjelmistotestaajat suorittavat tiukan testauksen. Lisäksi he käyttävät usein kombinatorista testausta eri testaustasoilla, koska se voi helposti testata ohjelmistoja, joilla on useita konfiguroitavia parametreja. Lyhyesti sanottuna kombinatorista testausta käytetään parametrien yhdistelmästä aiheutuvien vuorovaikutusvikojen havaitsemiseen. Kombinatorisen testauksen tehokkuuden keskeinen oivallus on saatu NIST: n vuosina 1999-2004 tekemistä tutkimuksista ja tutkimuksista. Se on erittäin hyödyllinen lähestymistapa, joka voi järjestelmällisesti tutkia järjestelmän asetusta hallittavassa määrässä testiä. Se on lähestymistapa, joka tuottaa ja suorittaa laadukkaita testaus erittäin kustannustehokkaalla nopeudella. Lisäksi se on tehokas testauksen suunnittelutekniikka, jolla voidaan käsitellä kattavuusongelmia mahdollisimman varhaisessa vaiheessa. Näin ollen, jos ohjelmistoinsinööri haluaa saada parhaat testitulokset, heidän pitäisi varmasti suorittaa kombinatorinen testaus varhaisessa vaiheessa ohjelmistokehityksen elinkaaren (SDLC).

Anna palautetta!

Vastaa

Sähköpostiosoitettasi ei julkaista.