192
■
бұрыннан жұмыс істеп тұрған функционалдылықтың жұмысқа
қабілеттілінің бұзылмауын тексеру, егер оның коды қозғалған болса
немесе кейбір ақауларды функционалдылықта өзгерткен кезде.
Әдетте регрессивті тестілеудің қолданылған әдістері алдыңғы
тестілердің өткен
жолдарын қамтыған болса, ал тексерулер өз кезегінде
кодтарды біріктіру нәтижесінде регрессионды қателерге түскен жоқ па
екендігін тексереді.
Сол бір қателердің қайтадан шығуы нұсқаларды басқарудың әлсіз
техникасынан немесе адами қателердің себебінен болады. Сонымен
қатар, кодтың бір бөлігін жазып алғанда алдыңғы іске асыруда болған
сол қателер жиі қалқып шығады. Сол себепті қателерді түзеткен кезде
оған тесті құру және оны бағдарламаның келесі өлшеулерінде жиі
өткізіп тұру жақсы практика болып саналады.
Регрессионды тестілеу
қолмен де орындалуына қарамастан, бірақ бұл көбінесе регрессионды
тестілердің барлығын автоматты түрде орындауға мүмкіндік беретін
арнайы мамандандырылған бағдарламалардың көмегімен жасалады.
Кейбір жобаларда белгіленген уақыт аралығы арқылы регрессионды
тестілерді автоматты түрде өткізу үшін құралдар қолданылады.
Автоматтандырылған тестілерді қолдану
тексеру процесінің еңбек
сыйымдылығын жеңілдетеді.
Бағдарламалық қамсыздандыруды тестілеу бұл бүкіл бағдарламаны
қамтитын және кезекті жұмыс нұсқасын бағдарламалаушы мамандар
тапсырғанда әрбір рет орындалатын тестілердің толық жинағы.
Алдымен кітапханада шынымен қажетті тестілерден көп тестілер болуы
мүмкін. Оған шекті минимум жағдайлар мен уақытша сипаттамаларын
тексеруге арналған мысалдар кіруі керек. Тестілердің кейбіреуі
тестілеуді алғаш өткізгенде қателерді шығаруы мүмкін. Бірақ олардың
толық түзетуінен кейін бұл тестілерді қайта орындаудың пайдасы жоқ.
Мұндай тестілерді кітапханадан алып тастайды, тек қателер
анықталғандары ғана қалады.
Регрессивті тестілердің кітапханасын
құрудың кейбір ережелерін
қалыптастыруға болады.
Кітапхананың басқа тестілеріне эквивалентті тестілерді жою керек.
Ең дегенде, бұл тестілер, әрине, кітапханаға түсуі керек. Кітапхананы
бірнеше қызметкер құрған жағдайда мұндай жағдайлардың болуы
мүмкін.
Нысаны түзетілген қате болып табылатын тестілердің санын азайту
керек. Егер қате немесе оның кейбір түрлері тестілеудің циклдарының
бірқатарында байқалатын болса, онда кітапханаға оларды анықтау үшін
жеткілікті
тестілерді
қосу
керек.
Бірақ,
бағдарламалық
қамсыздандырудың тиісті бөлігі тестіленгеннен кейін (қателер
193
түзетілген), түзетілген қателерді іздеуге бағытталған тестілердің
көптеген бөлігін кітапханадан жойып тастауға болады.
Келесі тестілеу кезінде тестілерді үйлестіру керек.
Тестілеудің
басында мұны жасаудың қажеті жоқ, бірақ кейіннен тестілерді біріктіру
жұмысты біршама жеделдетеді.
Тестілеу автоматтандырылған болуы керек. Егер тестілердің белгілі
бір тобы тестілеудің келесі бірнеше циклдары ішінде орындалатын
болса, онда бұл процесс автоматтандырылуды қажет етеді.
Регрессионды кітапхананың барлық тестілерін бағдарламаның әрбір
өзгеруінен кейін орындау міндетті емес. Мұны сирек жасау керек -
циклдың әрбір екінші немесе үшінші цикында. Тестілеудің соңғы
сатысында барынша ықтимал
тестілер санын орындаған жақсы, ол
бағдарламаның шығаруға дайындығына көз жеткізу үшін, басқа
циклдарда тестілердің жартысы немесе тіптен үштен бір бөлігі
жеткілікті болады.
Регрессионды кітапхана ең үздік тестілерді қамту керек, олар
әзірленген болуы керек, бірақ ол тым үлкен болса,
жаңа тестілерді
әзірлеуге уақыт қалмайды. Ал, жаңа тестілер ғана үлкен
ықтималдылықпен табылған қателерді ғана анықтайды. Сол себепті
жұмысты регрессионды кітапхана тестілеу тиімділігін арттыратын
құрал болып қызмет ететіндей жоспарлау керек, ол оны тежемейтін
болуы керек.
Достарыңызбен бөлісу: