KompyutaProgramu

Mbinu za kupima programu na kulinganisha yao. Upimaji njia ya "black box" kupima na mbinu za "sanduku nyeupe"

Upimaji programu (SW) kutambua mapungufu, mapungufu na makosa katika kificho kwamba haja ya kuwa na ufumbuzi. Pia inaweza kuelezwa kama mchakato wa kutathmini utendaji na usahihi wa programu kwa msaada wa uchambuzi. mbinu za msingi za muungano na upimaji wa ala za programu na kuhakikisha ubora ni mtihani vipimo, usanifu na coding, kuegemea tathmini, uthibitisho na ukaguzi.

mbinu

Lengo kuu la programu ya kupima - uthibitisho wa ubora wa programu ya mfumo kupitia maombi ya utaratibu utatuzi katika hali makini kudhibitiwa ili kuamua ukamilifu na usahihi, na pia kugundua makosa siri.

mbinu za ukaguzi (kujaribu) mipango inaweza kugawanywa katika tuli na nguvu.

zamani ni pamoja na rasmi, ufuatiliaji na tathmini ya kiufundi, ukaguzi, hatua kwa uchambuzi hatua, ukaguzi, pamoja na tuli data kati yake uchambuzi na usimamizi.

mbinu Dynamic ni:

  1. White sanduku kupima. Hii ni utafiti wa kina wa mantiki ya ndani na muundo wa mpango. Ni muhimu elimu ya kanuni ya chanzo.
  2. Black sanduku kupima. Mbinu hii hauhitaji elimu yoyote juu ya utendaji kazi ndani ya maombi. Tunaona mambo tu msingi wa mfumo, si kuhusiana na au kuhusishwa na baadhi ya ndani muundo wake mantiki.
  3. Gray sanduku mbinu. Inaunganisha njia mbili uliopita. Debugging na elimu ndogo ya utendaji kazi wa ndani ya maombi ni pamoja na elimu ya mambo ya msingi ya mfumo.

kupima uwazi

nyeupe sanduku njia ya kutumia hati ya mtihani kudhibiti muundo wa kubuni taratibu. Mbinu hii inaruhusu kufunua makosa ya utekelezaji, kama vile maskini mfumo wa usimamizi code kwa kuchambua sehemu ya utendaji kazi ndani ya programu. mbinu mtihani Hizi ni husika kwa viwango ushirikiano, moduli na mfumo. Anayejaribu lazima kupata kanuni chanzo na kuitumia ili ujue kitengo kutenda inappropriately.

Upimaji programu na nyeupe-sanduku ina faida zifuatazo:

  • Inaruhusu kugundua makosa katika kanuni siri kwa kuondoa mistari yasiyo ya lazima;
  • matumizi ya madhara,
  • chanjo upeo ni kupatikana kwa kuandika script mtihani.

hasara:

  • juu ya gharama mchakato, wanaohitaji kitatuaji wenye ujuzi;
  • fursa nyingi kubaki kueleweka kikamilifu kwa sababu ya kina kuangalia ya uwezekano makosa yote yaliyofichika ni ngumu sana;
  • baadhi ya kanuni itakayopitishwa bila kutambuliwa.

White sanduku kupima ni mara nyingine inajulikana kwa kupima uwazi au kufungua sanduku, miundo, mantiki ya kupima, kwa kuzingatia kanuni chanzo, na usanifu mantiki.

aina kuu:

1) kupima kudhibiti mtiririko - miundo mbinu kwa kutumia programu ya kudhibiti mtiririko mfano na kama kupendelea njia rahisi zaidi kwa wachache kabisa;

2) tawi imeundwa kuchunguza vya kutatua kila chaguo (kweli au uongo) ya kila operator kudhibiti, ambayo pia ni pamoja na ufumbuzi pamoja;

3) upimaji wa njia kuu, ambayo inaruhusu wanaojaribu kuanzisha mantiki utata hatua utaratibu mradi kwa ajili ya kuwatenga kuweka msingi wa njia ya utekelezaji;

4) kuangalia mkondo data - mkakati mtiririko udhibiti wa utafiti uliofanywa na ufafanuzi kuhesabu kuhusu tangazo na kutumia programu vigezo;

5) mzunguko wa kupima - kikamilifu ililenga operesheni sahihi ya mchakato wa mzunguko.

utatuzi wa kitabia

Black sanduku kupima inayotibu programu kama "black box" - taarifa kuhusu utendaji kazi ndani ya mpango si kuhesabiwa, na kuchunguzwa masuala tu ya msingi ya mfumo. Katika hali hii, wanaojaribu anahitaji kujua mfumo usanifu bila ya kupata kanuni chanzo.

Manufaa ya mbinu hii:

  • ufanisi kwa sehemu kubwa ya kanuni;
  • kupunguza ya mtazamo wanaojaribu;
  • mtazamo mtumiaji wazi kutengwa na mitazamo developer (programu na wanaojaribu ni uhuru wa kila mmoja);
  • haraka zaidi kuundwa mtihani.

Upimaji programu nyeusi sanduku njia ina hasara zifuatazo:

  • kweli kazi ya kuchagua idadi ya kesi ya mtihani, na kusababisha chanjo mdogo;
  • ukosefu wa vipimo wazi ugumu wa kuendeleza maandiko mtihani;
  • chini ya ufanisi.

Majina mengine ya teknolojia hii - tabia, mashirika yasiyo ya wazi, kazi ya kupima na mbinu utatuzi ya boksi imefungwa.

Kundi hili ni pamoja na yafuatayo mbinu kupima programu:

1) sawa na kizigeu, ambayo inaweza kupunguza seti ya data mtihani kama data pembejeo programu Moduli imegawanywa katika sehemu tofauti,

2) mpaka thamani ya uchambuzi inalenga katika ukaguzi mipaka au maadili uliokithiri kikomo - kiwango cha chini, kiwango cha juu na thamani za kawaida ya hitilafu;

3) fuzzing - inatumika kutekeleza search kwa inputting hitilafu au Data batili poluiskazhennyh katika hali ya moja kwa moja au nusu moja kwa moja,

4) makosa ya causality - mbinu kulingana na kuundwa kwa michoro na kuamua uhusiano kati ya hatua na sababu zake: utambulisho, kukataa, mantiki AU na mantiki na - wahusika kuu nne, akielezea uhusiano kati ya chanzo na athari,

5) Ukaguzi wa arrays orthogonal kutumika kwa matatizo ya pembejeo eneo ndogo mno uwezekano wa utafiti wa kina;

6) kupima kila jozi - mbinu ambapo mkusanyiko wa thamani ya mtihani inajumuisha binary mchanganyiko wote inawezekana ya jozi ya vigezo pembejeo;

7) utatuzi hali ya mpito - mbinu nzuri kwa kuangalia hali ya mashine, na pia ili kupitia GUI user.

Black sanduku kupima: Mifano

mbinu nyeusi-sanduku ni msingi specifikationer, nyaraka, na maelezo ya interface programu au mfumo. Aidha, unaweza kutumia mifano (rasmi au isiyo rasmi), kuwakilisha tabia ya matarajio ya programu.

Kwa kawaida, njia hii ni kutumika kwa ajili ya kutatua user interface na inahitaji mwingiliano na maombi kwa kuanzisha ukusanyaji wa data na matokeo - kutoka screen, kutoka ripoti au nakala zake.

wanaojaribu, kwa hiyo, kuingiliana na programu kwa inputting, kwa yeyote kwa swichi, vifungo au interfaces nyingine. uchaguzi wa data pembejeo, utaratibu wa utawala au mlolongo wa vitendo unaweza kusababisha kubwa idadi ya mchanganyiko, kama inavyoonekana katika mfano unaofuata.

Jinsi ya vipimo wengi wanahitaji kufanya ili kuangalia thamani zote iwezekanavyo kwa ajili ya 4 madirisha bendera na shamba moja-off, kuweka muda katika sekunde? Mara ya kwanza kuona hesabu ni rahisi: 4 mashamba na nchi mbili iwezekanavyo - 24 = 16, ambayo lazima kuongezeka kwa idadi ya nafasi za iwezekanavyo kutoka 00 99, yaani 1600 inawezekana majaribio.

Hata hivyo, hesabu hii si sahihi: tunaweza kuamua kwamba uwanja mbili ya kiwango pia yana nafasi, yaani ni lina nafasi mbili alphanumeric na inaweza kujumuisha herufi na nambari, herufi maalum, nafasi, nk Hivyo, kama .... mfumo 16-bit kompyuta, kurejea 216 = 65536 moja kwa kila nafasi katika matokeo 4294967296 kesi mtihani kwamba ni tele na mchanganyiko 16 ya bendera ambayo inatoa jumla ya 68,719,476 736. Kama wao kufanya katika 1 mtihani kwa sekunde, jumla cont olzhitelnost kupima ni 2 177.5 miaka. Kwa ajili ya mifumo 32 au 64-bit, muda zaidi.

Kwa hiyo kuna haja ya kupunguza kipindi hiki kwa kiwango kinachokubalika. Hivyo, mbinu lazima kutumika kwa kupunguza idadi ya kesi mtihani bila kupunguza wigo wa kupima.

ulinganifu partitioning

kizigeu sawa ni njia rahisi kwamba ni zinazotumika kwa ajili ya vigezo yoyote ambayo yako katika programu, kama pembejeo au pato maadili, ishara, nambari, na wengine. Ni kutokana na kanuni ya kwamba data zote kutoka sawa moja ya kizigeu kutibiwa njia sawa na kwa maelekezo moja.

Wakati wa kupima, kuchaguliwa mwakilishi moja ya kila kizigeu hasa ulinganifu. Hii inaruhusu kwa utaratibu kupunguza idadi ya kesi ya uwezekano mtihani bila kupoteza chanjo ya amri na kazi.

Madhara mengine ya partitioning hii ni kupunguza mlipuko ya kuunganisha kati ya vigezo mbalimbali na kupunguza kuhusishwa ya kesi mtihani.

Kwa mfano, katika (1 / x) 1/2 kutumia data Utaratibu tatu, tatu sawa kizigeu:

1. Idadi yote chanya kutibiwa kwa njia moja na lazima kutoa matokeo sahihi.

2. Idadi yote hasi kubebwa kwa njia moja na matokeo sawa. Hii si sahihi, kwa sababu mizizi ya simu hasi ni imaginary.

3. Zero itashughulikiwa tofauti na kutoa makosa "mgawanyiko kwa sifuri". Hii ni sehemu yenye thamani moja.

Hivyo, tunaona sehemu tatu tofauti, moja ambayo ni kupunguzwa kwa thamani moja. Kuna moja "sahihi" sehemu, ambayo inatoa matokeo ya kuaminika, na mbili "sahihi" na matokeo sahihi.

mpaka thamani ya uchambuzi

Processing ya mipaka ya partitioning sawa inaweza kufanyika kwa njia tofauti kuliko ilivyotarajiwa. Uchunguzi wa maadili kikomo - njia maalumu ya kuchunguza tabia ya programu katika maeneo hayo. Mbinu hii inafanya kuwa rahisi kutambua makosa hayo:

  • yasiyofaa matumizi ya waendeshaji uhusiano (<,>, =, ≠, ≥, ≤);
  • makosa moja;
  • matatizo katika mzunguko na iterations,
  • Aina mbaya au ukubwa wa vigezo kutumika kwa ajili ya kuhifadhi taarifa;
  • mapungufu bandia kuhusishwa na aina ya data na vigezo.

kupima translucent

kijivu sanduku njia inaongeza mtihani chanjo, unaweza kuzingatia ngazi zote ngumu ya mfumo kupitia mchanganyiko wa mbinu nyeusi na nyeupe.

Kwa kutumia mbinu hii, wanaojaribu kwa ajili ya maendeleo ya maadili ya mtihani wanapaswa kuwa elimu ya miundo ya ndani data na mipangilio. Mifano ya mbinu kijivu sanduku kupima ni:

  • usanifu mfano,
  • Umoja Modeling lugha (UML);
  • hali mfano (finite hali mashine).

Katika njia ya sanduku kijivu kuendeleza kesi mtihani alisoma modules katika codes nyeupe uhandisi, na mtihani halisi ni kazi juu ya interfaces ya mipango nyeusi teknolojia.

Mbinu hizo kupima faida zifuatazo:

  • mchanganyiko wa faida fundi nyeupe na nyeusi masanduku,
  • Tester ni msingi interface na vipimo kazi, na si kanuni chanzo;
  • HatiJava wanaweza kufanya kesi kubwa ya mtihani;
  • kuangalia ni kwa kutokana na hatua ya mtazamo wa mtumiaji, si designer wa mpango;
  • kujenga desturi mtihani maendeleo;
  • usawa.

hasara:

  • mtihani chanjo ni mdogo kwa sababu hakuna huduma ya kanuni chanzo;
  • utata wa kasoro katika matumizi kusambazwa;
  • njia nyingi kubaki kueleweka kikamilifu,
  • kama programu developer imezindua mtihani, basi uchunguzi zaidi inaweza kuwa nyingi.

Jina lingine kwa ajili ya mbinu kijivu sanduku - translucent utatuzi.

Kikundi hiki ni pamoja mbinu kama ya kupima:

1) orthogonal safu - matumizi ya subset ya mchanganyiko wote inawezekana;

2) Matrix utatuzi kwa kutumia hali ya data ya programu,

3) regressive ukaguzi uliofanywa katika mabadiliko mapya kwa programu,

4) template mtihani kwamba uchambuzi kubuni na usanifu wa programu nzuri.

Ulinganisho wa mbinu za kupima programu

matumizi ya mbinu nguvu inaongoza kwa mlipuko ya kuunganisha ya idadi ya vipimo ambayo yanahitaji kuendelezwa, kutekelezwa na kutekelezwa. Kila mbinu zitumike pragmatically, kuchukua mapungufu yake katika akaunti ya.

Mbinu ya kweli tu haipo, kuna wale tu ambao ni bora inafaa kwa mazingira maalum. Uhandisi wa miundo kuruhusu sisi kupata kanuni bure au kwa kukusudia, lakini ni magumu na si zinazotumika kwa mipango mikubwa. Mbinu za kuzingatia dhahiri - wale tu ambao wanaweza kutambua kanuni kukosa, lakini wanaweza kutambua nje. Baadhi ya mbinu ni mzuri zaidi kwa ajili ya fulani mtihani ngazi, kosa aina au muktadha kuliko wengine.

Chini ni tofauti kubwa kati ya mbinu tatu nguvu kupima - imetolewa meza kulinganisha kati ya aina tatu za vya kutatua programu.

kipengele

sanduku njia nyeusi

Gray sanduku njia

Mbinu White sanduku

Upatikanaji wa habari na muundo wa mpango

Inaangalia namna tu ya msingi ya

ujuzi wa sehemu kuhusu muundo wa ndani ya programu

ufikiaji kamili wa kanuni chanzo

Kiwango cha kugawanyika wa mpango

chini

Central

high

Nani hutoa utatuzi?

Watumiaji wa mwisho, wateja wa majaribio na watengenezaji

Watumiaji wa mwisho, watengenezaji na debuggers

Watengenezaji na wapimaji

msingi

Upimaji ni msingi hali ya nje ya dharura.

Michoro database, data kati yake michoro, hali ya elimu ya ndani ya algorithm na usanifu

kifaa ndani kikamilifu na ufahamu

kiwango cha chanjo

Chini ya kina na inahitaji kiwango cha chini ya muda

Central

Uwezekano mpana. Muda mwingi

Data na mipaka ndani

Tatua tu kwa majaribio na makosa

Je kuchunguzwa nyanja data na mipaka ya ndani, ikiwa ni inayojulikana

bora ya mtihani data domains na mipaka ndani

Ufaafu kupima algorithm

hakuna

hakuna

Ndiyo

automation

mbinu moja kwa moja ya programu ya kupima ni kiasi kurahisisha mchakato wa ukaguzi, bila kujali mazingira ya kiufundi na mazingira ya. Wao ni kutumika katika kesi mbili:

1) aŭtomate nyeti, radidi au kina kazi kama vile faili kulinganisha na safu elfu kadhaa ili kutolewa wakati wa msongamano wa wanaojaribu pointi muhimu zaidi;

2) kwa ajili ya kufanya kufuatilia au kazi ambayo haiwezi kwa urahisi kufanywa na watu kama vile ukaguzi wa utendaji au uchambuzi majibu wakati huo unaweza kupimwa kwa hundredths ya pili.

zana mtihani kunaweza kuorodheshwa kwa njia tofauti. mgawanyiko ya ni msingi kazi wao kusaidia:

  • Udhibiti mtihani, ambayo ni pamoja na usimamizi wa miradi ya msaada, matoleo, usanidi, uchambuzi wa hatari, kufuatilia mtihani, makosa, dosari, na zana taarifa,
  • mahitaji ya usimamizi, ambayo ni pamoja na mahitaji ya kuhifadhi na specifikationer, kuangalia yao kwa ajili ya ukamilifu na utata, kipaumbele yao na ufuatiliaji wa kila mtihani,
  • muhimu ya mapitio na uchambuzi tuli, ikiwa ni pamoja na mtiririko wa ufuatiliaji, na majukumu, kurekodi na hifadhi ya maoni, kasoro kugundua na mipango viungo marekebisho usimamizi orodha ya kuzingatia na sheria, kufuatilia mawasiliano hati asili na kanuni ya uchambuzi tuli kugundua kasoro, kuhakikisha kufuata na viwango vya uandishi code, uchambuzi wa miundo na utegemezi, hesabu ya vigezo tani ya kanuni na usanifu. Aidha, matumizi ya compilers, analyzers, jenereta na mahusiano ya-rejea msalaba;
  • Modeling, ambayo ni pamoja na zana kwa ajili ya modeling tabia ya biashara na mtihani mifano;
  • mtihani maendeleo kuhakikisha kizazi cha data inatarajiwa kwa misingi ya hali ya na mifano user interface na kanuni, kusimamia na kujenga au kurekebisha faili na hifadhidata, ujumbe, kuhalalisha data kwa misingi ya sheria za usimamizi, uchambuzi wa takwimu za hali ya na hatari;
  • Mtazamo muhimu kwa kuingia data kwa njia ya graphical user interface, API, mstari amri kwa kutumia comparators kusaidia kutambua vipimo mafanikio na aliyeshindwa,
  • msaada utatuzi mazingira ambayo utapata nafasi vifaa kukosa au programu, katika Vol. Vifaa vya Masimulizi h. kulingana na nia ya pato subset, emulators terminal, simu za mkononi na vifaa vya mtandao, mazingira kwa kuangalia lugha, mifumo ya uendeshaji na vifaa kwa kuondoa kukosa vipengele dereva, uwongo modules, nk, pamoja na zana ya kunasa na kubadilisha OS maombi CPU simulation ya juu, RAM, ROM, au mtandao .;
  • .. kulinganisha files data, hifadhidata, kuangalia matokeo inatarajiwa wakati na baada ya mtihani kukamilika, incl nguvu na kundi kulinganisha, Automatic "Vipaumbele";
  • mipako kipimo kwa ujanibishaji wa uvujaji wa kumbukumbu na zisizo sahihi kudhibiti tabia yake mfumo kukadiria chini ya simulated maombi mzigo wa kuzalisha mzigo, hifadhidata, mitandao au seva katika mazingira ya kweli ya maendeleo kwa kipimo, uchambuzi na uhakiki wa ripoti ya mfumo wa rasilimali;
  • usalama;
  • utendaji kupima, mzigo na uchambuzi nguvu;
  • zana nyingine, katika Vol. h. kukagua tahajia na syntax, mtandao wa usalama, upatikanaji wa kurasa zote za wavuti na mengine.

mtazamo

Pamoja na mabadiliko ya mwenendo wa sekta ya programu, mchakato wa utatuzi pia kubadilika. Kuna njia mpya ya programu ya kupima, kama vile huduma-orientirovannae usanifu (SOA), teknolojia wireless, huduma ya simu, na kadhalika. E., Je kufunguliwa njia mpya ya kupima programu. Baadhi ya mabadiliko ambayo yanatarajiwa katika sekta zaidi ya miaka michache ijayo ni hapa chini:

  • wapimaji itatoa nyepesi mfano kwamba watengenezaji itakuwa na uwezo wa kuangalia code yako,
  • maendeleo za majaribio, ikiwa ni pamoja kuangalia na kuwapa mfano mipango katika hatua za awali, itakuwa kuondokana wengi wa utata,
  • kuwepo kwa utekaji nyingi mtihani kufupisha muda wa kugundua hitilafu;
  • Tuli analyzer na kugundua maana ya kuwa zaidi sana kutumika,
  • matumizi ya matrices madini, kama vile chanjo ya vipimo, wigo wa mtindo na kanuni chanjo itaonyesha maendeleo ya miradi;
  • zana ya kuunganisha kuruhusu watumiaji wa majaribio ya kuamua maeneo ya kipaumbele kwa utatuzi;
  • wapimaji itatoa angavu na ya thamani ya huduma katika mchakato maendeleo ya programu,
  • debuggers inaweza kujenga zana na mbinu ya programu ya kupima yaliyoandikwa katika na kutumia aina ya lugha ya programu,
  • Utatuzi wataalam itakuwa kitaaluma zaidi wenye ujuzi.

Je kubadilishwa na mbinu kupima programu ya biashara-oriented, kubadilisha njia ya mwingiliano na mifumo na habari wao kutoa wakati kupunguza hatari na kuongeza faida ya mabadiliko ya biashara.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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