Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»



Pdf көрінісі
бет119/466
Дата20.07.2022
өлшемі3,66 Mb.
#37798
түріПрограмма
1   ...   115   116   117   118   119   120   121   122   ...   466
Байланысты:
pavlovskaia-jogargy-dengeili

V кезең. Төменге қарай тестілеу. Бұл кезеңді соңғы етіп жазып 
отырғанымыз бастапқы кезеңдерде тесттен өткізуді орындау қажет емес 
дегенді білдірмейді. Жобалау мен программалау міндетті түрде тесттер 
жынтығын – тексерілетін бастапқы мəліметтер мен оларға сəйкес эталондық 
нəтижелер жиынын анықтаумен қатар жүруі керек.
Программаны тестілеу жəне түзету процестерін бір-бірінен ажырата білу 
керек. Тестілеу – программаның дұрыстығын тексеруге арналған процесс. 
Тестілеу тұрақты түрде жүргізіледі, оның мақсаты – программаның дұрыс 
жұмыс істейтінін жəне барлық жоба спецификацияларына сəйкес келетінін 
көрсету. Программаны түзетіп жөндеу (debug) – программадағы қателерді 
анықтап, соларды жөндеу процесі, мұнда барлық қателерді түзету мақсаты 
қойылмайды. Тесттен өткізу кезінде анықталған қателер түзетіледі. Қателерді 
табу процесі қанығу заңына бағынатынын, яғни қателердің көпшілігі 
тестілеудің бастапқы кезеңдерінде анықталатынын жəне программада 
неғұрлым қате аз болса, оларды табу соғұрлым ұзаққа созылатынын жоспар-
лау кезінде ескеріп отыру керек.
Программаны толық тесттен өткізу үшін алгоритмнің əрбір тармағын 
жеке-жеке тексеру керек. Тармақтардың жалпы саны əрбір кезеңдегі 


122
барлық баламалы (альтернатива) жолдар комбинациясымен анықталады. Ол 
нақты шектеулі сан, бірақ ол өте үлкен болуы мүмкін, сондықтан програм-
ма үзінділерге бөлінеді, солардың əрқайсысын толық тесттен өткізгеннен 
кейін əрбір фрагмент көлемді тармақтардың элементар түйіндері ретінде 
қарастырылады. Операторлардың талап етілген реттілікпен орындалуын 
қадағалайтын мəліметтерден басқа, тесттерде шекаралық шарттарды тексе-
ру (мысалы, х>10 шарты бойынша көшу 10 санына тең, одан үлкен жəне кіші 
мəндер үшін де тексерілуі керек) де қамтылуы тиіс. Бастапқы мəліметтердің 
соларға сəйкес келмейтін қате мəндерін тексеру жəне оған программаның 
жауап қайтаруы жеке тексеріледі. 
Төмен қарай бағытталған тестілеу идеясы бойынша программаны жобалау 
аяқталмай тұрып, оны тесттен өткізу қарастырылады. Бұл негізгі модуларалық 
интерфейстерді ертерек тексеруге, сонымен қатар программа қолданушының 
талаптарын қанағаттандыратынына көз жеткізуге мүмкіндік береді. Логикалық 
ядро негізгі интерфейстердің жүзеге асырылуының дұрыстығына күмəн бол-
майтындай дəрежеде сыналғаннан кейін ғана программаның келесі деңгейін 
кодтау мен тестілеуге кірісу керек.
Əрине, программа қаңқа түрінде көрсетілетін кезде оны толық тест-
тен өткізу мүмкін емес, алайда əрбір келесі деңгейді қосу тестілеу аймағын 
біртіндеп кеңейтуге мүмкіндік береді.
Төмен қарай бағытталған жобалауда жүйе деңгейіндегі кешенді түзету 
кезеңі жоғары қарай бағытталған тəсілмен салыстырғанда, аз уақыт ала-
ды жəне мұнда тосын жағдайлар да аз болады, себебі жүйенің көлемді 
бөлігіне əсер ететін үлкен қателердің пайда болу ықтималдығы едəуір 
аз болады. Сонымен қатар, жүйеге қосылатын əрбір модуль үшін оның 
қоршаған ортасы қалыптасқан, түзетілген модульдердің нəтижелік 
(шығыс) мəліметтерін басқа модульдерді тестілеуде кіріс мəліметтер 
ретінде қолдануға болады, бұл тестілеу үрдісін жеңілдетеді. Бұл жүйеге 
модульді «шикілей» қосуға болады деген сөз емес – тестілеудің бір бөлігін 
жеке, яғни автономды түрде өткізу ыңғайлы болып табылады, себебі жүйе 
кірісінде жеке модульді тестілеу үшін барлық қажетті нұсқаларды генера-
циялау қиын болады.
Программаларды жөндеп түзету əдістерін қарастыру бұл кітаптың 
құрамына енгізілмеген, себебі түзету кезінде нақты программалау қоршауы 
құралдары (мысалы, компиляторлар) оларды түзетуге екпінді түрде əсер етеді.


Достарыңызбен бөлісу:
1   ...   115   116   117   118   119   120   121   122   ...   466




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

    Басты бет