TietokoneetOhjelmistot

Testausmenetelmät ohjelmistojen ja vertailla niitä. Testausmenetelmä "musta laatikko" testaus ja menetelmää "white box"

Testausohjelmisto (SW) yksilöidä aukot puutteita ja virheitä koodin, joka on puututtava. Se voidaan myös määritellä prosessiksi arvioida toimivuutta ja oikeellisuuden ohjelmiston avulla analyysin. Perusmenetelmät integroinnin ja testauksen ohjelmistosovellusten ja varmistaa laadun on testata määrittely-, suunnittelu- ja koodaus, luotettavuus arviointi, validointi ja todentaminen.

menetelmät

Päätarkoituksena ohjelmistojen testaus - vahvistus laadun ohjelmisto järjestelmällisellä virheenkorjaus sovelluksia huolellisesti valvotuissa olosuhteissa määrittää niiden täydellisyys ja tarkkuus sekä tunnistamaan piilotetut virheitä.

Todentamismenetelmiin (testaus) ohjelmat voidaan jakaa staattiseen ja dynaamiseen.

Entinen sisältää epävirallinen, seuranta ja tekninen tarkastelu, tarkastus-, askel askeleelta, valvontaa, sekä staattiset tietovirta analysointi ja hallinta.

Dynaaminen tekniikat ovat:

  1. Lasilaatikkotestaus. Tämä on yksityiskohtainen tutkimus sisäisen logiikan ja ohjelman rakenteen. On tarpeen tuntemus lähdekoodia.
  2. Musta laatikko testaus. Tämä tekniikka ei vaadi mitään tietoa sisäkorvan toiminnasta sovelluksen. Pidämme vain keskeisiä näkökohtia järjestelmän, jotka eivät liity tai liittyy muutamia sen sisäistä loogista rakennetta.
  3. Harmaa laatikko menetelmä. Siinä yhdistyvät kaksi edellistä lähestymistapaa. Vianmääritykseen vähän tietoa sisäisen toiminnan hakemuksen yhdistetään tiedoilla sitä järjestelmän näkökohtia.

läpinäkyvä testaus

Valkoinen laatikko, jossa käytetään testiskriptien hallita rakenne menettelyä suunnittelu. Tämä tekniikka mahdollistaa paljastaa toteuttamiseen virheitä, kuten huono hallinta koodi järjestelmä analysoimalla osa sisäkorvan toiminnasta ohjelmiston. Nämä testimenetelmät ovat sovellettavissa integraatio, moduuli ja järjestelmän tasolla. Testaaja on oltava pääsy lähdekoodia ja käyttää sitä selvittää mikä laite käyttäytyy sopimattomasti.

Testaus ohjelmia white-box on seuraavia etuja:

  • Sen avulla voidaan havaita virheen piilotettu koodi poistamalla tarpeettomat rivit;
  • käyttö sivuvaikutuksia;
  • mahdollisimman monessa saavutetaan kirjoittamalla testikoodi.

haittoja:

  • kalliilla prosessi, joka vaatii ammattitaitoisen virheenkorjauksen;
  • monia keinoja jäävät tutkimatta, koska läpikotaisin kaikki mahdolliset piilotettu virheitä on hyvin monimutkainen;
  • jotkut koodi on huomaamatta.

Lasilaatikkotestaus kutsutaan joskus testaamalla läpinäkyvä tai avoin laatikko, rakenteellisia, loogisia testaus, joka perustuu lähdekoodin, ja logiikka arkkitehtuuri.

Tärkeimmät lajikkeet:

1) testataan virtauksen ohjaus - rakenteellinen strategia käyttäen ohjelmaa kontrollivuomalli ja suositaan enemmän yksinkertaisia tapoja vähemmän monimutkaisia;

2) haara on suunniteltu tutkimaan virheenkorjaus kunkin vaihtoehdon (tosi tai epätosi) jokaisen ohjausventtiilin toimintaa, joka sisältää myös yhdistetty liuos;

3) testaus pääpolun, jonka avulla testaaja muodostaa loogisen kompleksisuusluku menettelyyn hanke eristämiseksi emäksen joukon suorittamisen polkuja;

4) tarkistamalla tietovirta - vuonohjauksen strategian tutkimuksen mukaan merkinnät laskea tietoa mainoksen ja käyttää ohjelmaa muuttujia;

5) sykliä testaus - keskittyi täysin oikeaan toimintaan syklisen prosesseja.

käyttäytymiseen virheenkorjaus

Musta laatikko testaus kohtelee ohjelmistoa kuin "musta laatikko" - tietoa sisäkorvan toiminnasta Ohjelman ei lasketa, ja tarkastetaan vain keskeisiä näkökohtia järjestelmän. Tällöin testaaja tarvitsee tietää järjestelmäarkkitehtuuri ilman pääsyä lähdekoodiin.

Edut Tämän lähestymistavan:

  • tehokkuus suurten koodisegmentti;
  • helppous käsitys testeri;
  • Käyttäjän näkökulmasta on selvästi erotettu kehittäjä näkökulmista (ohjelmoija ja testaaja ovat toisistaan riippumattomia);
  • luominen nopeutuu testin.

Testausohjelmisto musta laatikko menetelmällä on seuraavat haitat:

  • todellakin tehdään valikoidulle joukolle testitapauksia, mikä rajoitettu peitto,
  • puute selkeä maininta vaikea kehittää testiskriptejä;
  • alhainen tehokkuus.

Muut nimet tätä tekniikkaa - käyttäytymiseen, läpinäkymättömiä, toiminnallinen testaus ja vikojen menetelmä suljetun laatikon.

Tähän voivat kuulua seuraavat ohjelmistot testauksen tekniikat:

1), joka vastaa osion, joka voi vähentää joukon testituloksia kuin syöttää ohjelmistomoduuli data jaetaan erillisiin osiin;

2) raja-arvo analyysi keskittyy todentaminen rajojen tai äärimmäinen raja-arvot - minimi, maksimi, ja tyypilliset arvot virheen;

3) fuzzing - käyttää toteuttamaan hakua syöttämällä virheitä tai vioittuneet tiedot poluiskazhennyh automaattisessa tai puoliautomaattisessa tilassa;

4) laskee syy - tekniikka, joka perustuu luoda kuvaajia ja määritetään suhde toiminta ja sen syistä: identiteetti, negaatio, looginen TAI ja looginen JA - neljä pääasiallista merkkiä, välisen suhteen ilmaisevat syy-seuraus;

5) tarkastaminen ortogonaalisia matriiseja kohdistetaan ongelmia on suhteellisen pieni tulo-ala on yli mahdollisuus tyhjentävä tutkimus;

6) testataan kaikki parit - tekniikka, jossa joukko testiarvojen käsittää kaikki mahdolliset binaarinen yhdistelmät kunkin parin syöteparametreja;

7) virheenkorjaus tilanvaihto - käyttökelpoinen menetelmä tilan tarkistamiseen koneen, sekä selata graafisen käyttöliittymän käyttäjän.

Musta laatikko testaus: Esimerkkejä

musta laatikko tekniikka perustuu tekniset tiedot, asiakirjat, ja kuvaukset ohjelmointirajapinta tai järjestelmän. Lisäksi voit käyttää malleja (virallinen tai epävirallinen), joka edustaa odotettua ohjelmiston käyttäytymistä.

Tyypillisesti, tämä menetelmää käytetään virheenkorjaus käyttöliittymä ja vaatii vuorovaikutusta hakemuksen ottamalla käyttöön tiedonkeruu ja tulokset - näytöstä, raporteista tai tulosteet.

Testaaja siis vuorovaikutuksessa ohjelmiston syöttämällä, vaikuttamalla kytkimiä, nappeja tai muita liitäntöjä. Valinta lähtötietoja, suuruusluokkaa hallinnon tai toimintojen sarja voi johtaa valtavan kokonaismäärä yhdistelmä, kuten on esitetty seuraavassa esimerkissä.

Kuinka monta testiä täytyy tehdä, jotta voidaan tarkistaa kaikki mahdolliset arvot 4 ikkunoiden lippua ja kertaluonteisten kentän, aseta aika sekunneissa? Ensi näkemältä laskelma on yksinkertainen: 4 kentät, jossa on kaksi mahdollista tilaa - 24 = 16, joka on kerrottuna mahdollisia kantoja 00-99, eli 1600 mahdollista testejä.

Kuitenkin, tämä laskelma on väärä: voimme määrittää, että kahden pisteen kenttä voi myös sisältää tilan, eli se koostuu kahdesta aakkosnumeerinen kantojen ja voi sisältää aakkosnumeerisia merkkejä, erikoismerkkejä, tilat, jne. Näin ollen, jos .... järjestelmä on 16-bittinen tietokone, käännä 216 = 65536 yksi kutakin asemaa tuloksena 4294967296 testi tapauksissa, jotka on kerrottava 16 yhdistelmiä lippuja, joka antaa yhteensä 68719476 736. Jos ne suorittavat 1 testi sekunnissa, koko jatk olzhitelnost testaus on 2 177,5 vuosi. 32 tai 64-bittisissä järjestelmissä, kesto vieläkin.

Näin ollen on olemassa tarve vähentää tämän ajan hyväksyttävälle tasolle. Näin ollen menetelmiä tulisi soveltaa vähentää testin tapauksessa ilman, vähentämällä niiden testauksen.

ekvivalenssiositus

Vastaava osio on yksinkertainen menetelmä, joka on sovellettavissa mihin tahansa muuttujat, jotka ovat läsnä ohjelmisto, onko tulon tai lähdön arvot, symbolinen, numeerinen, ja muut. Se perustuu siihen periaatteeseen, että kaikki tiedot yksi ekvivalentti osion käsitellään samalla tavalla ja että samoja ohjeita.

Testauksen aikana, valitaan yksi edustaja kustakin erityisesti Ekvivalenssiluokkien. Näin voit systemaattisesti vähentää mahdollisia testitapauksia kärsimättä kattavuus komentoja ja toimintoja.

Toinen seuraus tästä osiointi on vähentää kombinatoristen räjähdys eri muuttujien välillä ja siihen liittyviä testi tapauksissa.

Esimerkiksi (1 / x) 1/2 kolmella datasekvenssejä, kolmen vastaavan osion:

1. Kaikki positiiviset numerot käsitellään samalla tavalla ja pitäisi antaa vääriä tuloksia.

2. Kaikki negatiiviset luvut käsitellään samalla tavalla saman tuloksen. Tämä on virheellinen, koska juuri negatiivinen numero on kuvitteellinen.

3. nolla käsitellään erikseen ja antaa virheen "nollalla". Tämä on osa, jossa on yksi arvo.

Siten, näemme kolme erillistä osaa, joista toinen on vähentää yksittäisen arvon. On yksi "oikea" -osiossa, joka antaa luotettavia tuloksia, ja kaksi "väärää" kanssa virheellisiä tuloksia.

Raja-arvo analyysi

Käsittely rajoilla vastaavan eristämiseen voidaan tehdä eri tavalla kuin odotettiin. Tutkimus raja-arvot - hyvin tunnettu menetelmä analysoida ohjelmiston käyttäytymistä näillä alueilla. Tämä tekniikka mahdollistaa havaita tällaiset virheet:

  • virheellinen käyttö ihmissuhteisiin toimijoiden (<,>, =, ≠, ≥, ≤);
  • yksittäinen virhe;
  • ongelmia syklit ja toistojen,
  • väärä tyyppisiä tai koko muuttujat informaation tallentamiseksi;
  • keinotekoisia rajoituksia liittyy tietotyypit ja muuttujat.

läpikuultava testaus

harmaa laatikko menetelmä kasvattaa testin kattavuus, voit keskittyä kaikki vaikeat tasot järjestelmän yhdistämällä mustavalkoinen tekniikoita.

Tätä tekniikkaa käyttäen, testaaja kehittämiseen testiarvoista on tietoinen sisäisten tietorakenteiden ja algoritmien. Esimerkkejä harmaa-box testausmenetelmiä ovat seuraavat:

  • arkkitehtuurimalli;
  • Unified Modeling Language (UML);
  • tilamallin (äärellinen tilakone).

Menetelmässä harmaan kentän kehittää testi tutkituista tapauksista moduulit valkoinen insinööri koodit, ja todellinen testi suoritetaan rajapintojen mustan teknologiaohjelmia.

Näitä testausmenetelmiä on seuraavia etuja:

  • etujen yhdistelmä teknikko valkoinen ja musta laatikko;
  • Testaaja perustuu käyttöliittymän ja toiminnallinen erittely, eikä lähdekoodia;
  • debugger tehdä suuria testitapaukset;
  • tarkistus tehdään siitä näkökulmasta käyttäjä, eikä suunnittelija ohjelman
  • luoda omia testi kehitystä;
  • objektiivisuuden.

haittoja:

  • testi kattavuus on rajoitettu, koska ei ole pääsyä lähdekoodiin;
  • monimutkaisuus virheiden hajautetuissa sovelluksissa;
  • monin tavoin jäävät tutkimatta;
  • jos ohjelmistokehittäjä on käynnistänyt testin, niin lisätutkimuksia saattaa olla liian suuri.

Toinen nimi harmaan tikkotekniikat - läpikuultava virheenkorjaus.

Tähän ryhmään kuuluvat esim testausmenetelmät:

1) ortogonaalisia array - käytön osajoukon kaikkia mahdollisia yhdistelmiä;

2) matriisin virheenkorjaus käyttäen tilan ohjelman tietojen

3) regressiivinen tarkastus suoritetaan uudet muutokset ohjelmistoon;

4) mallin testi, joka analysoi suunnittelu ja arkkitehtuuri hyvän hakemuksen.

Vertailu ohjelmistojen testauksen tekniikat

Dynaamiset menetelmät johtaa kombinatorinen räjähdys useita testejä, jotka on kehitetty ja toteutettu. Jokainen tekniikkaa tulisi käyttää pragmaattisesti ottaen sen rajoitukset huomioon.

Ainoa todellinen tapa ei ole, on vain ne, jotka sopivat paremmin erityisessä yhteydessä. Rakennesuunnitteluna avulla voimme löytää hyödytön tai haitallista koodia, mutta ne ovat monimutkaisia ja eivät koske suuria ohjelmia. Menetelmät perustuvat tiedot - ainoat, jotka pystyvät tunnistamaan puuttuvat koodia, mutta he eivät voi tunnistaa ulkopuolinen. Joitakin tekniikoita ovat sopivat tietylle testi tasolla, virhetyypin tai yhteydessä kuin toiset.

Alla ovat tärkeimmät erot kolmen dynaamisen testauksen tekniikoita - annetaan taulukon, jossa verrattiin kolmen muotoja Vianetsintäohjelmistot.

näkökohta

Musta laatikko menetelmä

Harmaa laatikko menetelmä

White-box menetelmä

Tietojen saatavuus koostumuksesta ohjelman

Tarkasteltu ainoastaan perusnäkökohtiin

Osittainen tietoa sisäistä rakennetta ohjelman

Täysi pääsy lähdekoodiin

Pirstaleinen ohjelman

alhainen

keskus-

korkea

Joka tuottaa virheenkorjaus?

Loppukäyttäjille, testaajille ja kehittäjille

Loppukäyttäjille, kehittäjille ja debuggereita

Kehittäjille ja testaajille

pohja

Testaus perustuu ulkoiseen hätätilanteissa.

Kaaviot tietokanta, data vuokaaviot, tila sisäisen tiedon algoritmin ja arkkitehtuurin

Sisäinen laite on täysin tietoinen

Aste kattavuus

Suppeampi ja vaatii erittäin vähän aikaa

keskus-

Mahdollisesti kattavin. Aikaa vievä

Tietojen ja sisärajoilla

Debug vain kokeilemalla

Voi tarkistaa datan verkkotunnukset ja sisärajojen jos ne ovat tiedossa

Paras testituloksia verkkotunnusten ja sisärajojen

Soveltuvuustesteihin algoritmi

ei

ei

kyllä

automaatio

Automaattisia menetelmiä ohjelmistojen testauksen on paljon yksinkertaistamaan tarkastuksen, riippumatta teknisen ympäristön ja yhteydessä. Niitä käytetään kahdessa tapauksessa:

1) automatisoimaan tylsiä, toistuvaa tai huolellinen tehtäviä, kuten tiedostojen verrattuna useita tuhansia rivejä jotta vapauttaa aikaa pitoisuuden testaajan tärkeämpää pistettä;

2) suorittaa seuranta tai tehtävät, joita ei voida suorittaa helposti ihmiset, kuten suorituskykyverifioinnin tai analyysi vasteaika voidaan mitata sekunnin sadasosia.

Testata välineitä voidaan luokitella eri tavoin. Seuraava jako perustuu tehtävistä ne tukevat:

  • testi johto, johon kuuluvat projektinhallinta tukea, versioita, kokoonpanot, riskianalyysi, testi seuranta, virheitä, virheitä, ja raportointi työkalut;
  • vaatimusten hallinta, joka sisältää tallennuksen vaatimukset ja tekniset tarkista ne täydellisyys ja epäselvyys, niiden prioriteetti ja jäljitettävyys jokaisessa testissä;
  • kriittinen tarkastelu ja staattisen analyysin, kuten virtausvalvonta ja tehtäviä, ja tallentamisen kommentteja, vikojen havaitsemiseen ja suunnitellaan korjauksia hallinta linkkejä tarkistuslistoja ja sääntöjä, seuranta viestinnän lähdedokumentit ja koodin staattisen analyysin havaitsemiseksi vikoja, noudattamisen varmistamiseksi normeja kirjoittaa koodia, analyysi rakenteiden ja riippuvuuksien, laskenta metriikka parametrien koodi ja arkkitehtuuri. Lisäksi, käyttää kerääjiä, analysaattorit, generaattorit ja suhteet viittauksia;
  • mallinnus, joka sisältää työkalut mallintamiseen liiketoimintatapoja ja testata malleja;
  • testi kehitys varmistaa uusia tietoja odotettavissa perusteella olosuhteet ja käyttöliittymän mallit ja koodin, hallita luoda tai muokata tiedostoja ja tietokantoja, viesti-, tietojen vahvistus pohjalta johtoa koskevat säännöt, tilastollinen analyysi edellytyksistä ja riskien
  • kriittisesti kirjoittamalla dataa graafisen käyttöliittymän, API, komentorivin käyttäen vertaimet auttaa tunnistamaan onnistuneita ja epäonnistuneita testit;
  • tuki virheenkorjaus ympäristö, jonka avulla voit korvaamaan puuttuvaa laitteistoa tai ohjelmistoa, til. h. simulointilaitteiden perustuen määritettyyn lähtöön osajoukko, pääte-emulaattorit, matkapuhelimien ja verkkolaitteiden, ympäristön tarkkailun kielille, käyttöjärjestelmien ja laitteistojen korvaamalla puuttuvat osat kuljettaja, kuvitteellinen moduulit, jne, sekä työkaluja syömällä ja muokkaamalla käyttöjärjestelmä pyytää CPU simulointi rajoitus, RAM, ROM, tai verkon .;
  • .. vertailu tiedostoihin, tietokantoihin, tarkista odotetut tulokset aikana ja sen jälkeen testi on valmis, sis dynaaminen ja panoksen vertailu, automaattinen "Oraclen";
  • päällystämällä mittaus lokalisoinnin muistivuotokuvioista ja virheellinen sen säätöominaisuudet arvioimalla järjestelmä simuloidussa kuormituksen tuottavan kuormitus sovelluksia, tietokantoja, verkkoihin tai palvelimiin realistista kasvun mittaus, analysointi ja todentaminen järjestelmän resursseja raportin;
  • turvallisuus;
  • suorituskyvyn testaus, kuormitus ja dynaaminen analyysi;
  • muita työkaluja, til. h. tarkistaa oikeinkirjoituksen ja syntaksin, verkon turvallisuus, saatavuus kaikille verkkosivuilla ja muissa.

näkökulma

Muuttuvien suuntausten ohjelmistoalalla, prosessi virheenkorjaus on myös muuttua. On uusia menetelmiä ohjelmistojen testauksen, kuten palvelukeskeisen orientirovannae arkkitehtuurin (SOA), langattomat tekniikat, mobiilipalvelut, ja niin edelleen. E., ovat avanneet uusia tapoja testata ohjelmiston. Osa muutoksista, joiden odotetaan alalla tulevina vuosina on lueteltu alla:

  • testaajat tarjoaa kevyt malli, joka kehittäjät voivat tarkistaa koodin;
  • kehittäminen testausmenetelmien, kuten katselu ja mallinnus ohjelmat varhaisessa vaiheessa, poistaa monia ristiriitoja;
  • läsnä useita kuuntelun testi lyhentää virheen havaitseminen;
  • Staattinen analysaattorin ja ilmaisuvälineet voidaan käyttää laajemmin;
  • käyttö mineraali matriisien, kuten kattavuus spesifikaation mallin soveltamisalan ja koodikattavuutta määräävät hankkeiden kehittämiseen;
  • kombinatorinen työkalujen avulla testaajat määritellä painopistealoja virheenkorjaus;
  • testaajat tarjoaa intuitiivisia ja arvokkaita palveluja koko ohjelmistokehityksen prosessin;
  • debuggereita voivat luoda työkaluja ja ohjelmistojen testausmenetelmät kirjoitettu ja vuorovaikutuksessa eri ohjelmointikieliä;
  • Virheenkorjaus asiantuntijoita enemmän koulutettuja.

Korvataan uudella liiketoimintalähtöistä ohjelmistojen testausmenetelmiä, muuttaa tapaa vuorovaikutusta järjestelmien ja niiden tarjoamaan tietoon ja vähentää riskejä ja lisää etuja liiketoiminnan muutoksia.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 fi.atomiyme.com. Theme powered by WordPress.