К ә с І би білім беру г. Н. Федорова бағдарламалық модульдерді біріктіруге қатысу



Pdf көрінісі
бет100/195
Дата28.11.2022
өлшемі4,31 Mb.
#53308
1   ...   96   97   98   99   100   101   102   103   ...   195
Байланысты:
foreign 745

Қолмен тестілеу әдісі - бағдарламаны ретке келтірудің ең 


145 
қарапайым және жалғыз тәсілі. Қателерді анықтаған кезде 
тестілендірілетін бағдарламаны қолмен орындау керек, тестілік 
жиынтықты қолдана отырып, олармен жұмыс кезінде қате табылғанда. 
Әдіс тиімді, бірақ, үлкен бағдарламалар үшін күрделі есептеуі бар 
бағдарламалар 
үшін 
қолданылмайды, 
сондай-ақ 
қате 
бағдарламалаушының операциялардың орындалуы туралы түсінігі 
дұрыс болмаған жағдаймен байланысты болғанда қолданылмайды. Бұл 
әдісті ретке келтірудің басқа әдістерінің құрамдас бөлшегі ретінде жиі 
қолданады.
Индукция әдісі қате туралы хабарлама ретінде немесе есептеудің 
қате нәтижелері ретінде пайда болатын қателердің симптомдарын 
мұқият талдауға негізделген. Егер компьютер жай ғана «қатып қалған» 
болса, онда қатенің пайда болу фрагменті соңғы алынған нәтижелерден 
және пайдаланушының әрекеттерінен есептейді. Осындай тәсілмен 
алынған ақпаратты зерделеуге болады, ол үшін бағдарламаның тиісті 
үзіндісін қарап шығады. Нәтижесінде кейіннен тексерілетін қателер 
туралы болжамды шығарады. Егер болжам дұрыс болса, онда қате 
туралы ақпаратты егжей-тегжейлейді, әйтпесе басқа болжамды 
шығарады.
Қате туралы деректерді жинай отырып, оның білінуі туралы белгілі 
болған кезде барлығын жазып алу керек, мұнда қатесі бар үзінді 
қалыпты орындалатыны сияқты, қате байқалатын жағдайларды да 
назарға алу қажет. Егер деректерді зерделеу нәтижесінде ешқандай 
болжам анықталмаған болса, онда қате туралы қосымша ақпарат қажет 
болады.
Дедукция әдісі келесідей болады. Алдымен қате туралы осындай 
көріністі болдыратын көптеген себептерді қалыптастырады. Содан 
кейін бар деректерге қарама-қайшы келетін себептерге талдау жасайды. 
Егер барлық себептері алынып тасталса, онда зерттелетін үзіндіні 
қосымша тестілеу қажет болады. Керісінше жағдайда біршама ықтимал 
болжамды дәлелдеуге талпынады. Егер болжам алынған қате белгілерін 
түсіндіретін болса, онда қате табылды, әйтпесе келесі себепті тексереді.
Кері бақылау әдісі шағын бағдарламалар үшін қолданылады. 
Тексеру дұрыс емес нәтижені шығару нүктесінен басталады. Бұл нүкте 
үшін қолдағы бар нәтижені алуға әкелетін негізгі айнымалылардың 
мәндері туралы болжам құрылады. Бұдан әрі, осы болжамға сүйене 
отырып, алдыңғы нүктелердегі айнымалылардың міндері туралы 
ұсыныс жасайды. Процесті қатенің себебін тапқанша жалғастырады.
Жиірек кездесетін бағдарламалық қателердің кейбір санаттарын 
қаратырамыз.
Ф у н к ц и о н а л д ы қ к е м ш і л і к т е р і . Бұл кемшіліктер өзі істеу 
қажетті нәрсені орындамай, өз функцияларының біреуін нашар 
орындайтын немесе толығымен нашар орындайтын бағдарламаға тән. 


146 
Бағдарлама функциялары оның сипаттамасында толық сипатталуы тиіс 
және бекітілген сипаттізімнің негізінде өз жұмысын құрады.
П а й д а л а н у ш ы
и н т е р ф е й с і н і ң
к е м ш і л і к т е р і .
Пайдаланушы интерфейсінің жұмыс істеу қолайлылығын және 
дұрыстығын бағалауды тек онымен жұмыс процесінде ғана мүмкін. Бұл 
жұмысқа пайдаланушының өзі қатысқаны дұрыс. Бұған БӨ прототипін 
әзірлеу көмегімен қол жеткізуге болады, мұнда талаптардың 
сипаттамасында пайдаланушы интерфейсінің одан әрі белгіленуіне 
барлық талаптарды келісу және ретке келтіру жүргізеді. Талаптардың 
сипаттамасын бекіткеннен кейін одан ауытқу немесе соңғыларының 
орындалмауы қате болып табылады. Бұл пайдаланушы интерфейсіне 
толық қатысты болады.
Ж е т к і л і к с і з ө н д і р у ш і л і к . Кейбір БӨ әзірлеген кезде оның 
маңызды сипаттамасы жұмыс жылдамдығы болуы мүмкін, кейде бұл 
критерий БӨ тапсырыс берушінің талаптарында беріледі. Егер 
пайдаланушыға бағдарлама баяу жұмыс істейтін болып көрінетін болса, 
ол қиын, егер бәсекелес бағдарламалар талаптардың сипаттамасында 
берілген сипаттамаларын қанағаттандырмаған болса, ол тіптен қиын. 
Бұл жойылуы қажет қате болады.
Қ а т е л е р д і қ а т е ө ң д е у . Қателерді өңдеу процедуралары - 
бағдарламаның өте маңызды бөлігі. Қатені дұрыс анықтап, бағдарлама 
ол туралы хабарлама беруі тиіс. Мұндай хабарламаның болмауы 
бағдарлама жұмысындағы қате болып табылады.
Ш е к т і к ш а р т т а р д ы қ а т е ө ң д е у . Әртүрлі шектік 
жағдайлар болады. «Артық» немесе «кем», «бұрын» немесе «кейін», 
«бірінші» немесе «соңғы», «қысқарақ» немесе «ұзынырақ» ұғымдары 
қолданылатын бағдарлама жұмысының кез келген қыры диапазон 
шекараларында тексерілуі тиіс. Бағдарлама диапазондарының іші 
тамаша жұмыс істеуі мүмкін, ал шекараларында кездейсоқ жағдайлар 
болып 
жатуы 
мүмкін, 
олар 
өз 
кезегінде 
бағдарламалық 
қамсыздандырудың жұмысында қателерге әкеледі.
Е с е п т е у қ а т е л е р і . Есептеу қателеріне қате формулалар, қате 
таңдап алынған есептеу алгоритмдеріне, өңделетін деректерге 
қолданылмайтын формулаларға қатысты қателер жатады. Қателердің 
арасында ең көп таралғандары дөңгелектеу қателері болып табылады.
А ғ ы н д а р д ы б а с қ а р у қ а т е л е р і . Бағдарламаның жұмыс 
істеу логикасы бойынша бірінші әрекеттің соңынан екіншісі орындалуы 
керек. Егер мұның орнына үшінші немесе төртінші әрекет орындалған 
болса, онда ағындарды басқаруда қате жіберілген.
Ж а р ы с у ж а ғ д а й ы . Мысалға, жүйеде екі оқиға: А және Б 
күтілуде. Егер бірінші оқиға А келсе, онда бағдарламаның орындалуы 


147 
жалғасады, ал егер Б келсе, онда бағдарлама жұмысында жаңылу 
болады. Әзірлеушілер әрдайым бірінші бірінші оқиға А оқиға болуы 
керек дейді де, Б жарыстан жеңіп, бірінші келуі мүмкін деп ойламайды. 
Классикалық жарыс жағдайы осылай.
Жарысу жағдайын тестілеу жеткілікті дәрежесінде күрделі. Олар 
өзара әрекет ететін процестер мен ағындар параллель орындалатын 
жүйелерге тән, сондай-ақ нақты уақыттың көп пайдаланушы жүйелеріне 
тән. Мұндай жүйелердегі қателерді қайта шығару қиын, және оларды 
анықтауға әдетте көп уақыт талап етіледі.
А с қ ы н ж ү к т е у . Бағдарлама жұмысындағы іркілістер жадының 
жетпеуінен немесе қажетті жүйелік ресурстардың болмауынан болады. 
Әрбір бағдарламаның өз шектері бар, бағдарлама шамадан тыс 
жүктемемен жұмыс істей алмайды, мысалы тым үлкен көлемдегі 
деректермен. Бағдарламаның нақты мүмкіндіктері бағдарламаның 
сипаттаманы ресурстарына сәйкес келеді ме, және ол шамадан тыс 
жүктелгенде қалай әрекет ететіндігі туралы мәселе.
К о м п ь ю т е р
а п п а р а т у р а с ы м е н
д ұ р ы с
ж ұ м ы с
і с т е м е у . Бағдарламалар аппараттық құрылғыларға дұрыс емес 
деректер жіберуі мүмкін, олардың қате туралы хабарламаларын елемеуі 
мүмкін, бос емес немесе тіпті жоқ құрылғыларды пайдаланбақ болуы 
мүмкін. Тіпті, егер қажетті құрылғы сынған болса, бағдарлама 
бағдарлама мұны түсініп, ал оған жүгіну кезінде «іркіліп қалмауы» тиіс. 




Достарыңызбен бөлісу:
1   ...   96   97   98   99   100   101   102   103   ...   195




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет