際際滷

際際滷Share a Scribd company logo
Program 迭 in転inerija Programins 眺rangos testavimas
Turinys Bazins P町 testavimo 壊厩看一看壊 Testavimo lygiai Testavimo metodai
Bazins P町 testavimo 壊厩看一看壊
Kas tai yra testavimas? Testavimas  tai programins 眺rangos vykdymo ( execution ) procesas, kurio metu reikia nustatyti, ar jos pateikiami rezultatai yra teisingi Testavimas  tai programos vykdymo procesas, kurio tikslas yra surasti programos klaidas
Kas tai yra testavimas? Programins 眺rangos testavimas  tai procesas, kuris skirtas 眺rodyti, jog programoje yra klaid迭, o ne atvirk邸iai Testavimas  tai sistemos ar jos komponento vykdymas prie tam tikr迭 slyg迭, gaunam迭 rezultat迭 stebjimas ir fiksavimas bei tam tikr迭 sistemos ar komponento savybi迭 眺vertinimas (IEEE/ANSI, 1990)
Testavimo filosofija Galima teigti, kad testavimas yra tam tikras mastymo b笛das Jeigu P町 k笛rj迭 tikslas testavimo metu yra parodyti, jog klaid迭 programoje nra, jie j迭 neras arba ras nedidel眺 skaii迭 Ir prie邸ingai, jeigu testavimo proceso metu bus siekiama parodyti, kad programoje klaid迭 yra, j迭 bus tikrai rasta ir nema転ai
P町 sutrikimas  (failure) Programins 眺rangos sutrikimas atsiranda tuomet, kai programa netenkina reikalavim迭 specifikacijos
P町 gedimas  (fault) Gedimas  tai tokia situacija, kai programos vidin b笛sena yra nesuderinama su tiktina b笛sena
P町 defektas  (defect) Defektas  tai programos kodo fragmentas, kuris sukelia gedim bei sutrikim
P町 klaida  (error) Klaida  tai programuotojo klaida, kurios pasekoje atsiranda defektas
Testavimo atvejis  (test case) Testavimo atvejis  tai tam tikras duomen迭 rinkinys, kurio pagalba yra tikrinama programa
Testavimo atvejo strukt笛ra Prad転ios ta邸kas arba slyga, vidini迭 kintam迭j迭 pradins reik邸ms Pradiniai duomenys Testuojamos programos funkcijos arba savybs pavadinimas Laukiami rezultatai
Testai ir j迭 parinkimo kriterijai Testas  tai testavimo atvej迭 rinkinys Test迭 parinkimo kriterijai naudojami nustatyti, kurie testavimo atvejai leis geriausiai i邸testuoti program Testavimo parinkimo kriterijus leid転ia nusprsti, ar testavimo proces jau galima nutraukti
Test迭 parinkimo kriterij迭 strukt笛ra Test迭 parinkimo kriterij迭 sudaro trys elementai: P, S ir T P  tai testuojama programa S  programos specifikacija, pagal kuri buvo paruo邸ti testavimo atvejai T  testavimo atvej迭 rinkinys
Testavimo efektyvumas Testavimo efektyvumas matuojamas testavimo atvej迭 skaiiumi, reikalingu i邸testuoti program Jeigu program galima i邸testuoti su nedideliu testavimo atvej迭 skaiiumi, vadinasi, jie buvo parinkti tinkamai ir yra efektyv笛s Testavimo efektyvum apibr転ia ir tai, ar parinkti testavimo atvejai leido pasiekti pagrindinius testavimo tikslus
Testavimo tikslai Surasti programos defektus.  iuo atveju, efektyv笛s bus tie testai, kuriuos vykdant programa suveik klaidingai  Patikrinti, kad programa atitinka savo specifikacij.  iuo atveju, efektyv笛s bus tie testai, kurie 眺rodys, jog programa veikia taip, kaip apra邸yta specifikacijoje
Testavimo orakulas  (oracle) Testavim vykdantis 転mogus ar programa, kuri nusprend転ia, jog programa test prajo (arba neprajo), vadinamas testavimo orakulu
Testavimo orakulo problema Pagrindin su testavimo orakulu susijusi problema yra jo atliekam迭 funkcij迭 automatizavimas, nes 転mogui 眺vykdyti didel眺 skaii迭 test迭 ir po to i邸analizuoti gautus rezultatus yra gantinai sunku
Testavimo lygiai
Testavimo objektai Atskiras programos modulis (vienetas) Moduli迭 grup Visa sistema
Testavimo lygiai Vienet迭 testavimas Integracijos testavimas Sistemos testavimas
Vienet迭 testavimas (1) Vienet迭 testavimas tikrina izoliuot迭 programins 眺rangos komponent迭, kuriuos 眺manoma i邸testuoti atskirai, veikim Vienetu gali b笛ti tiek nedidels paprograms, tiek ir didesni komponentai, sudaryti i邸 tampriai tarpusavyje susiet迭 element迭 Vienet迭 testavimas da転niausiai atliekamas i邸 karto po programos kompiliacijos
Vienet迭 testavimas (2) Vienet迭 testavimas skirstomas 眺 statin analiz ir dinamin analiz Statin analiz  apima programos kodo analiz bei sintakss ir semantikos klaid迭 paie邸k speciali迭 priemoni迭 pagalba Dinamin analiz  apima baltos d転s testavim, juodos d転s testavim ir duomen迭 strukt笛romis paremt testavim
Integracijos testavimas (1) Integracijos testavimas tikrina sistemos komponent迭, da転niausiai jau i邸testuot迭 atskirai per vienet迭 testavim, tarpusavio sveik Integracijos testavimo metu sistemos komponentai apjungiami palaipsniui, taip palengvinant klaid迭 paie邸kos proces
Integracijos testavimas (2) Egzistuoja tokie komponent迭 apjungimo metodai: smulkinantis ( top-down ) testavimas stambinantis ( bottom-up ) testavimas
Smulkinantis  (top-down)  testavimas (1) Smulkinanio testavimo atveju, apjungimas pradedamas nuo auk邸iausio lygio komponent迭: pirmiausia i邸testuojami auk邸iausio lygio komponentai, o 転emesniame lygyje esantys pakeiiami tu邸iomis proced笛romis arba  kam邸iais  ( stubs )
Smulkinantis  (top-down)  testavimas (2)
Stambinantis  (bottom-up)  testavimas (1) Stambinanio testavimo atveju, apjungimas pradedamas nuo 転emiausio lygmens: kiekvienas 転emiausio lygio komponentas testuojamas atskirai, paskui i邸testuoti komponentai apjungiami 眺 auk邸tesn眺 lyg眺 ir procesas kartojamas tol, kol gaunama visi邸kai sukomplektuota sistema
Stambinantis  (bottom-up)  testavimas (2) io testavimo metu naudojami test迭 vykdikliai arba draiveriai ( drivers ) Draiveris   tai programa, paduodanti testinius atvejus testuojamai programai ir sulyginanti gautus rezultatus su laukiamais
Stambinantis  (bottom-up)  testavimas (3)
Sistemos testavimas (1) Sistemos testavimas skirtas ne surasti sistemos funkcionavimo klaidoms (dauguma j迭 turjo b笛ti i邸taisytos vienet迭 ir integracijos testavimo metu), o patikrinti visos sistemos elges眺 ir veikim
Sistemos testavimas (2) io testavimo metu testuojamos i邸orins ssajos su kitomis programomis, techniniais 眺renginiais, veikimo aplinka ir pan.  Taip pat tikrinama, ar sistema atitinka nefunkcinius reikalavimus, tokius kaip saugumas, patikimumas, panaudojamumas ir kt.
Sistemos testavimo tikslai Instaliacijos ( installation ) testavimas Alfa ir Beta testavimas Patikimumo ( reliability ) testavimas Regresinis ( regression ) testavimas Veikimo ( performance ) testavimas Stresinis ( stress ) testavimas Panaudojamumo ( usability ) testavimas
Alfa testavimas Alfa testavimo metu P町 k笛rjai instaliuoja dar ne iki galo i邸baigt program savo 眺monje ir pakvieia norinius vartotojus su ja dirbti io testavimo atveju P町 k笛rjai yra nuolat 邸alia vartotojo, pasiruo邸 i邸taisyti pasirod転iusias klaidas
Beta testavimas Beta testavimo metu dar ne iki galo i邸baigta programa instaliuojama pas norinius vartotojus ir testuojama jau savo veikimo aplinkoje Beta testavimas kartais gali b笛ti pavojingas tuo, kad vartotojas, pamats, kiek programoje yra klaid迭, gali nebenorti 眺sigyti galutins jos versijos Dl 邸ios prie転asties, beta testavime dalyvaujanius vartotojus reikia skatinti: daryti nuolaidas, suteikti nemokamas licencijas ir pan.
Regresinis testavimas (1) Regresinis testavimas yra pakartotinis sistemos testavimas, atliekamas modifikavus sistem arba i邸leidus nauj jos versij
Regresinis testavimas (2) Regresinis testavimas gali b笛ti vykdomas keliais b笛dais: kartojami visi anksiau atlikti testai, plius 眺vykdomi testai, sukurti i邸testuoti atliktiems pakeitimams i邸testuojami tik atlikti pakeitimai i邸testuojami atlikti pakeitimai bei tos sistemos dalys, kurias 眺takoja tie pakeitimai
Stresinis testavimas Stresinis testavimas testuoja sistem su tokiais duomen迭 kiekiais, kurie i邸eina u転 leistino kiekio rib迭 arba yra netoli maksimalaus leistino kiekio ribos io testavimo metu siekiama patikrinti, kas atsitiks, kai sistema dirbs esant slygoms, kurioms ji nebuvo suprojektuota: ar bus prarasti paslaugos ir duomenys, kiek j迭 bus prarasta ir pan.  Stresinis testavimas da転niausiai atliekamas realaus laiko sistemoms
Testavimo metodai
Intuicija pagr眺stas testavimas (1) Vienas i邸 da転niausiai naudojam迭 testavimo metod迭 yra testavimas, pagr眺stas intuicija  io metodo atveju, testavimo atvejai parenkami paio testuotojo, kuris remiasi savo 転iniomis bei patirtimi, sukaupta testuojant pana邸aus tipo programas
Intuicija pagr眺stas testavimas (2) Nors ir rekomenduojama naudoti kitus testavimo metodus, testavimas, pagr眺stas intuicija yra labai naudingas ypating迭 testavimo atvej迭 i邸skyrimui, kuri迭 ne眺manoma numatyti remiantis kokiomis nors taisyklmis
Juodos d転s testavimas (1) Juodos d転s testavimas yra pagr眺stas sistemos specifikacija Testuojant program 邸io metodo pagalba, ji yra 眺sivaizduojama kaip juoda d転: 転inomi tik 眺jimai ir i邸jimai, bet ne転inomas programos kodas  Paprastai juodos d転s testavim atlieka ne programuotojas, o kitas 転mogus, nedalyvaujantis programavimo procese
Juodos d転s testavimas (2)
Baltos d転s testavimas (1) Baltos d転s testavimo metodo atveju, testai parenkami atsi転velgiant 眺 programos kod
Baltos d転s testavimas (2)
Baltos d転s testavimo metodai Keli迭 testavimas Operatori迭 testavimas ak迭 testavimas
Keli迭 testavimas (1) Testavimo atvejai parenkami taip, kad kiekvienas, programoje egzistuojantis kelias, b笛t迭 眺vykdytas bent vien kart Keli迭 testavimo metu yra sudaromas programos skaiiavim迭 grafas, parodantis programos mazgus, priimanius sprendimus, bei lankus, rodanius skaiiavim迭 vykdymo eili邸kum Programos mazgais yra slyginiai operatoriai
Keli迭 testavimas (2) Nepriklausomais keliais yra:  1,2,3,8,9  1,2,3,4,6,7,2 1,2,3,4,5,7,2 1,2,3,4,6,7,2,8,9
Operatori迭 testavimas Testavimo atvejai parenkami taip, kad visi programos operatoriai b笛t迭 眺vykdyti bent po vien kart
ak迭 testavimas Testavimo atvejai parenkami taip, kad programoje esanios slygos b笛t迭 patikrintos tuo atveju, kai jos yra tenkinamos, ir tuo atveju, kai jos netenkinamos
Baltos d転s testavimo privalumai Baltos d転s metodo privalumas tas, kad testini迭 atvej迭 skaiius yra daug ma転esnis, negu juodos d転s atveju Taip yra dl to, kad mes 転inome, kas yra programos viduje

More Related Content

PI_13paskaita

  • 1. Program 迭 in転inerija Programins 眺rangos testavimas
  • 2. Turinys Bazins P町 testavimo 壊厩看一看壊 Testavimo lygiai Testavimo metodai
  • 3. Bazins P町 testavimo 壊厩看一看壊
  • 4. Kas tai yra testavimas? Testavimas tai programins 眺rangos vykdymo ( execution ) procesas, kurio metu reikia nustatyti, ar jos pateikiami rezultatai yra teisingi Testavimas tai programos vykdymo procesas, kurio tikslas yra surasti programos klaidas
  • 5. Kas tai yra testavimas? Programins 眺rangos testavimas tai procesas, kuris skirtas 眺rodyti, jog programoje yra klaid迭, o ne atvirk邸iai Testavimas tai sistemos ar jos komponento vykdymas prie tam tikr迭 slyg迭, gaunam迭 rezultat迭 stebjimas ir fiksavimas bei tam tikr迭 sistemos ar komponento savybi迭 眺vertinimas (IEEE/ANSI, 1990)
  • 6. Testavimo filosofija Galima teigti, kad testavimas yra tam tikras mastymo b笛das Jeigu P町 k笛rj迭 tikslas testavimo metu yra parodyti, jog klaid迭 programoje nra, jie j迭 neras arba ras nedidel眺 skaii迭 Ir prie邸ingai, jeigu testavimo proceso metu bus siekiama parodyti, kad programoje klaid迭 yra, j迭 bus tikrai rasta ir nema転ai
  • 7. P町 sutrikimas (failure) Programins 眺rangos sutrikimas atsiranda tuomet, kai programa netenkina reikalavim迭 specifikacijos
  • 8. P町 gedimas (fault) Gedimas tai tokia situacija, kai programos vidin b笛sena yra nesuderinama su tiktina b笛sena
  • 9. P町 defektas (defect) Defektas tai programos kodo fragmentas, kuris sukelia gedim bei sutrikim
  • 10. P町 klaida (error) Klaida tai programuotojo klaida, kurios pasekoje atsiranda defektas
  • 11. Testavimo atvejis (test case) Testavimo atvejis tai tam tikras duomen迭 rinkinys, kurio pagalba yra tikrinama programa
  • 12. Testavimo atvejo strukt笛ra Prad転ios ta邸kas arba slyga, vidini迭 kintam迭j迭 pradins reik邸ms Pradiniai duomenys Testuojamos programos funkcijos arba savybs pavadinimas Laukiami rezultatai
  • 13. Testai ir j迭 parinkimo kriterijai Testas tai testavimo atvej迭 rinkinys Test迭 parinkimo kriterijai naudojami nustatyti, kurie testavimo atvejai leis geriausiai i邸testuoti program Testavimo parinkimo kriterijus leid転ia nusprsti, ar testavimo proces jau galima nutraukti
  • 14. Test迭 parinkimo kriterij迭 strukt笛ra Test迭 parinkimo kriterij迭 sudaro trys elementai: P, S ir T P tai testuojama programa S programos specifikacija, pagal kuri buvo paruo邸ti testavimo atvejai T testavimo atvej迭 rinkinys
  • 15. Testavimo efektyvumas Testavimo efektyvumas matuojamas testavimo atvej迭 skaiiumi, reikalingu i邸testuoti program Jeigu program galima i邸testuoti su nedideliu testavimo atvej迭 skaiiumi, vadinasi, jie buvo parinkti tinkamai ir yra efektyv笛s Testavimo efektyvum apibr転ia ir tai, ar parinkti testavimo atvejai leido pasiekti pagrindinius testavimo tikslus
  • 16. Testavimo tikslai Surasti programos defektus. iuo atveju, efektyv笛s bus tie testai, kuriuos vykdant programa suveik klaidingai Patikrinti, kad programa atitinka savo specifikacij. iuo atveju, efektyv笛s bus tie testai, kurie 眺rodys, jog programa veikia taip, kaip apra邸yta specifikacijoje
  • 17. Testavimo orakulas (oracle) Testavim vykdantis 転mogus ar programa, kuri nusprend転ia, jog programa test prajo (arba neprajo), vadinamas testavimo orakulu
  • 18. Testavimo orakulo problema Pagrindin su testavimo orakulu susijusi problema yra jo atliekam迭 funkcij迭 automatizavimas, nes 転mogui 眺vykdyti didel眺 skaii迭 test迭 ir po to i邸analizuoti gautus rezultatus yra gantinai sunku
  • 20. Testavimo objektai Atskiras programos modulis (vienetas) Moduli迭 grup Visa sistema
  • 21. Testavimo lygiai Vienet迭 testavimas Integracijos testavimas Sistemos testavimas
  • 22. Vienet迭 testavimas (1) Vienet迭 testavimas tikrina izoliuot迭 programins 眺rangos komponent迭, kuriuos 眺manoma i邸testuoti atskirai, veikim Vienetu gali b笛ti tiek nedidels paprograms, tiek ir didesni komponentai, sudaryti i邸 tampriai tarpusavyje susiet迭 element迭 Vienet迭 testavimas da転niausiai atliekamas i邸 karto po programos kompiliacijos
  • 23. Vienet迭 testavimas (2) Vienet迭 testavimas skirstomas 眺 statin analiz ir dinamin analiz Statin analiz apima programos kodo analiz bei sintakss ir semantikos klaid迭 paie邸k speciali迭 priemoni迭 pagalba Dinamin analiz apima baltos d転s testavim, juodos d転s testavim ir duomen迭 strukt笛romis paremt testavim
  • 24. Integracijos testavimas (1) Integracijos testavimas tikrina sistemos komponent迭, da転niausiai jau i邸testuot迭 atskirai per vienet迭 testavim, tarpusavio sveik Integracijos testavimo metu sistemos komponentai apjungiami palaipsniui, taip palengvinant klaid迭 paie邸kos proces
  • 25. Integracijos testavimas (2) Egzistuoja tokie komponent迭 apjungimo metodai: smulkinantis ( top-down ) testavimas stambinantis ( bottom-up ) testavimas
  • 26. Smulkinantis (top-down) testavimas (1) Smulkinanio testavimo atveju, apjungimas pradedamas nuo auk邸iausio lygio komponent迭: pirmiausia i邸testuojami auk邸iausio lygio komponentai, o 転emesniame lygyje esantys pakeiiami tu邸iomis proced笛romis arba kam邸iais ( stubs )
  • 27. Smulkinantis (top-down) testavimas (2)
  • 28. Stambinantis (bottom-up) testavimas (1) Stambinanio testavimo atveju, apjungimas pradedamas nuo 転emiausio lygmens: kiekvienas 転emiausio lygio komponentas testuojamas atskirai, paskui i邸testuoti komponentai apjungiami 眺 auk邸tesn眺 lyg眺 ir procesas kartojamas tol, kol gaunama visi邸kai sukomplektuota sistema
  • 29. Stambinantis (bottom-up) testavimas (2) io testavimo metu naudojami test迭 vykdikliai arba draiveriai ( drivers ) Draiveris tai programa, paduodanti testinius atvejus testuojamai programai ir sulyginanti gautus rezultatus su laukiamais
  • 30. Stambinantis (bottom-up) testavimas (3)
  • 31. Sistemos testavimas (1) Sistemos testavimas skirtas ne surasti sistemos funkcionavimo klaidoms (dauguma j迭 turjo b笛ti i邸taisytos vienet迭 ir integracijos testavimo metu), o patikrinti visos sistemos elges眺 ir veikim
  • 32. Sistemos testavimas (2) io testavimo metu testuojamos i邸orins ssajos su kitomis programomis, techniniais 眺renginiais, veikimo aplinka ir pan. Taip pat tikrinama, ar sistema atitinka nefunkcinius reikalavimus, tokius kaip saugumas, patikimumas, panaudojamumas ir kt.
  • 33. Sistemos testavimo tikslai Instaliacijos ( installation ) testavimas Alfa ir Beta testavimas Patikimumo ( reliability ) testavimas Regresinis ( regression ) testavimas Veikimo ( performance ) testavimas Stresinis ( stress ) testavimas Panaudojamumo ( usability ) testavimas
  • 34. Alfa testavimas Alfa testavimo metu P町 k笛rjai instaliuoja dar ne iki galo i邸baigt program savo 眺monje ir pakvieia norinius vartotojus su ja dirbti io testavimo atveju P町 k笛rjai yra nuolat 邸alia vartotojo, pasiruo邸 i邸taisyti pasirod転iusias klaidas
  • 35. Beta testavimas Beta testavimo metu dar ne iki galo i邸baigta programa instaliuojama pas norinius vartotojus ir testuojama jau savo veikimo aplinkoje Beta testavimas kartais gali b笛ti pavojingas tuo, kad vartotojas, pamats, kiek programoje yra klaid迭, gali nebenorti 眺sigyti galutins jos versijos Dl 邸ios prie転asties, beta testavime dalyvaujanius vartotojus reikia skatinti: daryti nuolaidas, suteikti nemokamas licencijas ir pan.
  • 36. Regresinis testavimas (1) Regresinis testavimas yra pakartotinis sistemos testavimas, atliekamas modifikavus sistem arba i邸leidus nauj jos versij
  • 37. Regresinis testavimas (2) Regresinis testavimas gali b笛ti vykdomas keliais b笛dais: kartojami visi anksiau atlikti testai, plius 眺vykdomi testai, sukurti i邸testuoti atliktiems pakeitimams i邸testuojami tik atlikti pakeitimai i邸testuojami atlikti pakeitimai bei tos sistemos dalys, kurias 眺takoja tie pakeitimai
  • 38. Stresinis testavimas Stresinis testavimas testuoja sistem su tokiais duomen迭 kiekiais, kurie i邸eina u転 leistino kiekio rib迭 arba yra netoli maksimalaus leistino kiekio ribos io testavimo metu siekiama patikrinti, kas atsitiks, kai sistema dirbs esant slygoms, kurioms ji nebuvo suprojektuota: ar bus prarasti paslaugos ir duomenys, kiek j迭 bus prarasta ir pan. Stresinis testavimas da転niausiai atliekamas realaus laiko sistemoms
  • 40. Intuicija pagr眺stas testavimas (1) Vienas i邸 da転niausiai naudojam迭 testavimo metod迭 yra testavimas, pagr眺stas intuicija io metodo atveju, testavimo atvejai parenkami paio testuotojo, kuris remiasi savo 転iniomis bei patirtimi, sukaupta testuojant pana邸aus tipo programas
  • 41. Intuicija pagr眺stas testavimas (2) Nors ir rekomenduojama naudoti kitus testavimo metodus, testavimas, pagr眺stas intuicija yra labai naudingas ypating迭 testavimo atvej迭 i邸skyrimui, kuri迭 ne眺manoma numatyti remiantis kokiomis nors taisyklmis
  • 42. Juodos d転s testavimas (1) Juodos d転s testavimas yra pagr眺stas sistemos specifikacija Testuojant program 邸io metodo pagalba, ji yra 眺sivaizduojama kaip juoda d転: 転inomi tik 眺jimai ir i邸jimai, bet ne転inomas programos kodas Paprastai juodos d転s testavim atlieka ne programuotojas, o kitas 転mogus, nedalyvaujantis programavimo procese
  • 44. Baltos d転s testavimas (1) Baltos d転s testavimo metodo atveju, testai parenkami atsi転velgiant 眺 programos kod
  • 46. Baltos d転s testavimo metodai Keli迭 testavimas Operatori迭 testavimas ak迭 testavimas
  • 47. Keli迭 testavimas (1) Testavimo atvejai parenkami taip, kad kiekvienas, programoje egzistuojantis kelias, b笛t迭 眺vykdytas bent vien kart Keli迭 testavimo metu yra sudaromas programos skaiiavim迭 grafas, parodantis programos mazgus, priimanius sprendimus, bei lankus, rodanius skaiiavim迭 vykdymo eili邸kum Programos mazgais yra slyginiai operatoriai
  • 48. Keli迭 testavimas (2) Nepriklausomais keliais yra: 1,2,3,8,9 1,2,3,4,6,7,2 1,2,3,4,5,7,2 1,2,3,4,6,7,2,8,9
  • 49. Operatori迭 testavimas Testavimo atvejai parenkami taip, kad visi programos operatoriai b笛t迭 眺vykdyti bent po vien kart
  • 50. ak迭 testavimas Testavimo atvejai parenkami taip, kad programoje esanios slygos b笛t迭 patikrintos tuo atveju, kai jos yra tenkinamos, ir tuo atveju, kai jos netenkinamos
  • 51. Baltos d転s testavimo privalumai Baltos d転s metodo privalumas tas, kad testini迭 atvej迭 skaiius yra daug ma転esnis, negu juodos d転s atveju Taip yra dl to, kad mes 転inome, kas yra programos viduje