Практика бөлім техникалық Қызметті дамыту негізгі



жүктеу 4,91 Mb.
бет56/91
Дата18.03.2022
өлшемі4,91 Mb.
#37853
1   ...   52   53   54   55   56   57   58   59   ...   91
ТРПО готовый

8 тарау

ТЕСТІЛЕУ СТРАТЕГИЯСЫН ТАҢДАУ ЖӘНЕ


ТЕСТІЛЕУ
8. 1. ТЕСТІЛЕУ ДЕҢГЕЙЛЕРІ
Тестілеу - қателерді анықтау мақсатында бағдарламаның

орындалуы. Отладтау локализация және қателерді басқару деп аталады.



Модульдік тестілеу бағдарламалардың немесе кіші бағдарламалардың бір бөлігі болып табылатын жеке бағдарлама процедураларын және кіші бағдарламаларды тексеру процесі болып табылады. Модульді тестілеуді тікелей әзірлеуші жүргізеді және әрбір модульдегі барлық ішкі құрылымдар мен деректер ағындарын тексеруге мүмкіндік береді. Тестілеудің бұл түрі даму кезеңінің бөлігі болып табылады. Бірліктерді тестілеу кезінде әзірлеуші анықтайтын сынақтар жиынтығы әр модуль бойынша тестілеуді қамту деңгейі кем дегенде 70 ... 75% құрайды. Модульді тестілеу элементтері:

  • синтаксистік тексеру - бағдарлама кода синтаксистік қателерді анықтау үшін кейбір құралды қолдану;

  • кодтау стандарттарына сәйкестігін тексеру - компанияның кодтау стандарттарына сәйкестігін тексеру;

  • бағдарлама кодын техникалық қарау.

Бірліктерді тестілеу сәтті аяқталғаннан кейін, барлық модификацияланған модульдер мен сынақ люктері жобаның деректер базасында сақталады.



Интеграциялық тестілеу жекелеген модульдердің бірлескен жұмысын тексеру үшін жүргізіледі және бүкіл жүйені бір бүтін ретінде сынақтан өткізеді. Интеграциялық тестілеу барысында модульдер арасындағы байланыстар, олардың үйлесімділігі мен функционалдылығы тексеріледі. Ол тәуелсіздікпен жүзеге асырылады және тестілеу кезеңіне қосылады. Интеграциялық тестілеу элементтері:

  • функционалдық тексеру - модульдер жиынтығымен

орындалатын жеке функциялардың, талаптарға сәйкес келтірілген функциялардың сәйкестігін тексеру;

  • аралық нәтижелерді тексеру - барлық аралық нәтижелер мен файлдардың қол жетімділігі мен дұрыстығын тексеру;

  • интеграцияны тексеру - модульдер арқылы өзара ақпарат берудің дұрыстығын тексеріңіз.

Интеграциялық тестілеу кезінде анықталған қателер қате дерекқорында жазылған. Интеграциялық тестілеудің нәтижелері сынақ циклінің соңында сынақ прогрессінің есебіне қосылады.



Жүйелік тестілеу бағдарламалық жасақтаманың тұтастай жүйесін, оның ұйымдастырылуы мен жұмыс істеуін клиенттің талаптарына сәйкестігін тексеру үшін жасалған. Оны интеграциялық тестілеу сәтті аяқталғаннан кейін тәуелсіз тестерлер жүргізеді.

Жүйелік тестілеу элементтері:



    • шекаралық тестілеу - шекаралық шарттарда тестілеу;

    • Run-through тестілеу - нақты жүйенің жұмыс істеуінің барлық функционалдық сипаттамаларын тексеру;

    • мақсатты тестілеу - мақсатты платформасында тестілеу (мүмкіндігінше);

    • құжаттаманы тексеру - дұрыстығына арналған пайдаланушы құжаттамасын тексеру;

■сынаушы анықтаған басқа сынақтар.
Тестілеу барысында анықталған қателер жоба дерекқорында жазылған. Жүйелік тестілеудің нәтижелері сынақ прогрессінің есебіне енгізілген.

Шығарындыларды тестілеу тестілеудің соңғы сатысы болып табылады, ол тапсырыс берушіге жеткізу үшін ПП қолжетімділігін тексереді. Бұл сынақ тәуелсіз тестерлермен жүргізіледі.

Шығару сынақтарының элементтері:




  • орнатуды тексеру - орнату нұсқауларының анықтығы мен дұрыстығын тексеру;

  • құжаттаманы тексеру - барлық қажетті құжаттаманың толық дайын екендігін және тапсырыс берушіге тапсыруға дайын екендігін тексеру.

Шығуды сынау кезінде анықталған қателер жоба дерекқорында жазылған. Шығару процесін сәтті аяқтағаннан кейін, ПТ тұтынушыға жеткізіледі, сонымен бірге тест нәтижелері туралы

есеп береді.

Қабылдау тестілеуін орнату, бағдарламалық қамтамасыз етуді сақтау және соңғы пайдаланушыны оқытуға жауапты ұйым жүзеге асырады.
8.2. ТЕСТІЛЕУ ТЕХНОЛОГИЯСЫ
Бағдарламалық қамтамасыз етуді әзірлеу кезеңінде қолданылатын тестілеу технологиясы «шыны ыдысты» сынау деп аталады. Кейде бұл технология «қара жәшік» (қара жәшік) классикалық тұжырымдамасына қарама-қайшы емес, «ақ қорапты» сынау деп аталады.

«Қара жәшікті» тестілеу кезінде бағдарлама ішкі құрылымы белгісіз объект болып саналады. Сынаушы деректерді енгізеді және нәтижесін талдайды, бірақ ол бағдарламаның қалай жұмыс істейтінін білмейді. Тесттерді таңдаған маман, оның көзқарасынан, стандартты емес нәтижелерге әкелуі мүмкін деректер мен жағдайларды қызықтырады. Ол үшін, ең алдымен, тестілеу бағдарламасының қателіктері ең алдымен орын алатын деректердің әрбір санатының өкілдері қызықтырады.



  1. «Шыны ыдысты» сынақтан өткізгенде жағдай мүлдем өзгеше. Сынаушы (бұл жағдайда бағдарламашы өзі) толық қолжетімді болатын бастапқы кодты білуіне негізделген тесттерді әзірлейді. Нәтижесінде, ол келесі жеңілдіктерге ие болады.

  2. Тестілеу бағыты. Бағдарламашы бағдарламаны бөліктерде тексере алады, тестіленген модуль деп аталатын арнайы бағдарламаларды жасайды және бағдарламашыға қызығушылығын білдіретін бағдарламаға деректерді жібереді. Жеке модуль дәл

«шыны жәшік» ретінде сынақтан әлдеқайда оңайырақ.

  1. Толық кодты қамту. Әрбір сынақтағы қай код фрагменттері жұмыс істейтінін бағдарламашы әрқашан анықтай алады. Ол кодтың басқа бөлімдерінің әлі де сыналғанын көреді және олар сыналатын жағдайларды ала алады. Келесі кодтар тестілеуді орындау арқылы бағдарлама кодының ауқымын қадағалауды сипаттайды. Командалардың ағымын бақылау мүмкіндігі.

Бағдарламашы әрдайым келесі бағдарламада қандай функцияны орындау керектігін біледі және оның ағымдағы күйі қандай болуы керек. Бағдарлама ойдағыдай жұмыс істеп тұрғанын білу үшін бағдарламашы бағдарламаның орындалу барысы туралы ақпаратты көрсететін отладтау пәрмендерін қамтуы мүмкін немесе осы мақсатта түзеткіш деп аталатын арнайы бағдарлама құралын қолдануы мүмкін. Отладчик бағдарлама командасының орындалуын қадағалауға және өзгертуге, оның айнымалы мәндерінің мазмұнын және олардың мекен-жайларын жадыда көрсете алады және басқа да маңызды функцияларды орындай алады.

  1. Деректердің тұтастығын бақылау мүмкіндігі. Бағдарламашы әрбір бағдарламаның қандай элементінің өзгеруі керектігін біледі. Деректердің күйін қадағалау арқылы (сол сол түзеткішті пайдаланып), ол деректерді дұрыс емес модульдермен, дұрыс емес түсініктемелермен немесе пікірталассыз ұйыммен өзгерту сияқты қателерді анықтай алады. Бағдарламашы бағдарламалық жасақтаманы өз бетінше тексере алады.

  2. Ішкі шекаралық нүктелердің көрінісі. сырттан көрінісінен жасырылған бағдарламасы, сол шекаралық нүкте көзі коды көрінеді . Мысалы, бірнеше мүлдем басқа алгоритмдер және коды қарап жоқ, ол таңдаған бағдарламашы нақты әрекетті орындау үшін пайдалануға болады, олардың қандай анықтау мүмкін емес. Тағы бір типтік мысал кіріс деректерін уақытша сақтау үшін пайдаланылатын буферлік толып кету мәселесі болуы мүмкін. бағдарламашы дереу егер деректер толып Аралық кез келген соманы айта аласыз, және сынақтар мыңдаған жұмсайды, ал ол қажет емес.

  3. Таңдалған алгоритммен анықталатын тестілеу мүмкіндігі. Деректерді өңдеуді өте күрделі есептеу алгоритмдерін пайдалану үшін арнайы технологиялар қажет болуы мүмкін. Классикалық мысалдар ретінде, матрицаның трансформациясын және деректерді сұрыптауды келтіре аламыз. Бағдарламашыдан айырмашылығы, қандай алгоритмдерді қолдану керектігін білу керек, сондықтан арнайы әдебиетке сілтеме жасау керек.

«Шыны боксты» тестілеу бағдарламалау процесінің бір бөлігі болып табылады. Бағдарламашылар бұл жұмысты үнемі жасайды, олар жазғаннан кейін әрбір модульді тексереді, содан кейін қайтадан оны жүйеге біріктіргеннен кейін. Бірліктерді сынақтан өткізу кезінде сіз технологияны немесе құрылымдық немесе функционалды тестілеуді немесе екеуін де пайдалана аласыз.

Құрылымдық сынақ - шыны ыдысты сынаудың бір түрі. Оның негізгі идеясы тестіленген бағдарлама жолын дұрыс таңдау болып табылады. Керісінше, функционалды тестілеу қара жәшіктің

сынақ категориясына жатады. Әрбір бағдарлама функциясы кіріс деректерін енгізу және шығуды талдау арқылы сыналады. Сонымен қатар, бағдарламаның ішкі құрылымы өте сирек ескеріледі.

Құрылымдық тестілеу әлдеқайда күшті теориялық негізге ие болса да, көптеген тестерлер функционалды тестілеуді қалайды. Құрылымдық тестілеу математикалық моделдеуге ыңғайлы, бірақ бұл ол тиімдірек дегенді білдірмейді. Технологиялардың әрқайсысы басқа пайдаланған кезде жіберіп алған қателерді анықтауға мүмкіндік береді. Осы тұрғыдан олар бірдей тиімді деп атауға болады.



Тесттер белгілі бір тәртіпте жасалады. Сонымен қатар, сыртқы ерекшеліктерге сәйкес сынақтар бөлінеді:

  1. кіріс деректерінің әрбір класы үшін;

  2. кіріс деректерінің шекаралық және сандық мәндері үшін.

Барлық шығыс кластары тексеріліп, қажет болған жағдайда тесттер қосылады. Сынақ 1-қадамда сыналмаған функциялар үшін әзірленеді. Бағдарлама мәтініне сәйкес, барлық шартты ауысулар әр бағытта орындалады ма тексеріледі. Қажет болса, жаңа сынақтар қосылады. Осындай жолмен, әрбір цикл үшін жолдар беріле ме, жоқ па - тексеріледі: денені орындамай, қайталанудың жалғыз және ең көп саны. Тесттер дайындалуда, айрықша жағдайларға тексеру жүргізіледі, кіруге рұқсат етілмеген деректер, төтенше жағдайлар.

8.3. БАҒДАРЛАМА ҚАТЕЛЕРІ
Барлық бағдарлама қателері тиісті санаттарға жатқызылуы мүмкін. Ең жиі қарастырайық.

  1. Функционалдық кемшіліктер бағдарламаға тән, егер ол не істемесе, оның функцияларының бірін орындайды нашар немесе толық емес. Бағдарламаның функциялары оның сипаттамасында егжей-тегжейлі сипатталуы керек және ол сынаушы өз жұмысын құрастыратын бекітілген ерекшеліктер негізінде

  2. Пайдаланушы интерфейсінің кемшіліктері. Пайдаланушы интерфейсі жұмысының ыңғайлылығы мен дұрыстығын тек онымен жұмыс істеу барысында бағалауға болады. Пайдаланушының осы жұмысқа қатысқаны жөн. Бұған қол жеткізу интерфейсіне қойылатын талаптарды сәйкестендіріп, техникалық сипаттамаға сәйкестендіре отырып, PP прототипінің прототипін жасау арқылы қол жеткізуге болады. Талаптардың сипаттамасын

мақұлдағаннан кейін, кез келген ауытқулар немесе олардың сақталмауы қате болып табылады. Бұл пайдаланушы интерфейсіне толығымен қолданылады.

  1. Өндірістің жеткіліксіздігі. Кейбір бағдарламалық өнімдерді әзірлеу кезінде оның маңызды сипаты жұмыс жылдамдығы болуы мүмкін, кейде бұл өлшем клиенттің талаптары бойынша белгіленеді. Пайдаланушы бағдарламаның баяу жүріп жатқанын, әсіресе, бәсекелес бағдарламалардың айтарлықтай тезірек жұмыс жасайтындығын көрсеткенде жаман. бірақ бағдарлама спецификация талаптарына сәйкес келетін техникалық сипаттамаға сай келмесе. Бұл қатені тазалау керек.

  2. Қателерді дұрыс емес өңдеу. Қателерді өңдеу процедурасы бағдарламаның өте маңызды бөлігі болып табылады. Қатені дұрыс анықтау, бағдарлама туралы хабар беруі керек. Мұндай хабарламаның болмауы бағдарламада қателік болып табылады.

  3. Шекаралық шарттарды дұрыс өңдеу. Көптеген шекаралық жағдайлар бар. Бағдарлама жұмысының кез-келген аспектісі, онда «көп» немесе «аз», «бұрынғы» немесе «кейінгі»,

«бірінші» немесе «соңғы», «қысқа» немесе «ұзын» ұғымдар ауқымның шекарасында Žzone. Бағдарлама ауқымында бағдарлама жақсы жұмыс істей алады, бірақ олардың шекарасында ең күтпеген жағдайлар орын алуы мүмкін, бұл өз кезегінде ҚБ жұмысындағы қателіктерге әкеледі.

  1. Есептеу қателері. Бұл есептеу алгоритмін дұрыс таңдамаудан, өңделетін деректерге қолданылмайтын формулалар немесе формулалардан туындаған қателерді қамтиды. Дөңгелектегі қателіктер ең таралған.

  2. Ағынды басқару қателіктері. Бағдарламаның логикасына сәйкес, екінші әрекет бірінші әрекетті орындау керек. Егер оның орнына үшінші немесе төртінші әрекеті орындалса, онда ағынды басқаруда қате бар.

  3. Жарыс жағдайын тексеру өте қиын. Олар өзара әрекеттесу үрдістері мен жіптер бір мезгілде орындалатын жүйелерге, сондай-ақ көп пайдаланушы нақты уақыт жүйелеріне тән. Осындай жүйелердегі қателерді ойнату қиын, ал әдетте табу өте ұзақ уақытты алады.

Жарыс жағдайын тексеру өте қиын. Олар өзара әрекеттесу үрдістері мен жіптер бір мезгілде орындалатын жүйелерге, сондай-ақ көп пайдаланушы нақты уақыт жүйелеріне тән. Осындай жүйелердегі қателерді ойнату қиын, ал әдетте табу өте ұзақ уақытты алады.

  1. Тиеу. Бағдарламадағы ақаулар жадтың болмауы немесе басқа қажетті жүйелік ресурстардың болмауына байланысты болуы

мүмкін. Әрбір бағдарламаның шектері бар, бағдарлама үлкен жүктемелермен күресуге қабілетсіз, мысалы, деректердің тым көп болуы. Сұрақ: бағдарлама шамадан тыс жүктелгенде қалай әрекет етеді.

  1. Компьютерлік жабдықпен дұрыс жұмыс істемеу. Бағдарламалар аппараттық құрылғыларға дұрыс емес деректерді жібере алады, қате туралы хабарларды елемейді, бос емес немесе жоқ құрылғыны пайдалануға тырысады.




Кесте 8.1. Бағдарлама қателерінің түрлері және оларды табу

жолдары


Қателер түрлері

Анықтау әдістері

Синтаксистік

Құрастырушылар мен йланыстырушыларға статистикалық қылау және диагностика

Run-time қателері автоматты рде анықталады: асып кету, жадтан рғау түрі сәйкес келмейді

Динамикалық басқару:

Бағдарлама техникалық паттамаға сай емес

Мақсатты тестілеу

Ерекшеліктер талаптарға йкес келмейді

Сынақтар, бета-тестілеу

Қалаған құрылғы ақаулы болса да, бағдарлама оған қол жеткізуге тырысып жатқанда емес, оны «тоқтатуға» емес, түсінуге тиіс. Бағдарлама қателерінің түрлері және оларды анықтау әдістері Кестеде келтірілген. 8.1.


8.4. ТЕСТІЛЕУ ТҮРЛЕРІ
Мемлекеттер арасындағы өтпелерді тексеру. Әрбір белсенді бағдарламада ауысулар айқын күйден екіншісіне жасалады. Ең қарапайым мысал - бұл бағдарлама: бағдарламаны бастағаннан кейін командалардың бір тізімі бар, олардың біреуін бағдарлама күйінің өзгерісін таңдағаннан кейін және командалар жаңа күйде қол жетімді мәзірде пайда болады.

Бағдарлама ұсынатын әрбір нұсқаны, әрбір мәзір пәрменін тексеру қажет. 10-пәрменді 9 пәрмені немесе 22 пәрмені арқылы ашылған тәртіпте алуға болады. Бұл жағдайда 10 пәрмені екі рет - екі режимде де сыналуы керек. Дегенмен, мәзір пәрмендері, бағдарламаның барлық ықтимал режимдері және осы режимдер жолдары соншалықты көп болуы мүмкін, сондықтан оларды тексеру мүмкін емес. Сондықтан, бағдарламаны орындау жолдарын тексеру үшін тесттерді таңдағанда, келесі қағидаларды ұстану керек:



  • пайдаланушы әрекеттерінің барынша ықтимал тізбектерін тексеру;

  • пайдаланушының бір режимдегі әрекеттері деректерді көрсету немесе басқа режимде бағдарламамен ұсынылған мүмкіндіктер жиынтығына әсер етуі мүмкін деп болжанса, осы әрекеттерді тексеріңіз;

  • жоғарыда келтірілген ең қажетті сынақтарды орындаудан басқа, бағдарламамен еркін режимде жұмыс істеу үшін оны орындаудың кездейсоқ таңдауы.

Мемлекеттер арасындағы ауысу тек мәзір командаларын таңдаудан әлдеқайда күрделі болуы мүмкін. Деректерді енгізудің келесі формасының мазмұны мен құрылымы алдыңғы пішінде енгізілген ақпаратқа байланысты болуы мүмкін, кейбір өрістердің мәндері басқалардың рұқсат етілген мәндерін анықтай алады, белгілі бір ақпараттың кірісі бірқатар қосымша сұрауларды бастауы мүмкін. Мысалы, 1 мен 99 аралығындағы нөмірлерді енгізгенде, бағдарлама пайдаланушыға жіберілетін сұраудың бір түрін көрсетеді және басқа нөмірлерді енгізгенде, екіншісі. Бұл жағдайда эквиваленттік сыныптармен және олардың шекаралық мәндерімен бірге талдау қажет және тесттердің толық жиынтығын жасау үшін бағдарламаны жүзеге асырудың ықтимал жолдары.

Мәзір схемаларын жасау өте пайдалы. Мұндай схема осы жай-күйлер арасындағы өтуді тудыратын барлық бағдарлама күйлері

мен командаларды көрсетеді. Мәзірлер, графикалық құралдар (мысалы, түрлі түймелер) арқылы белсендірілетін пәрмендер және белгілі бір пернелерді басқаннан кейін орындалатын пәрмендер бар.Мысалы, схема «Файл» мәзірінен жолды «Ашу» пәрменіне, одан кейін «Файлды ашу» тілқатысу терезесіне және негізгі бағдарлама күйіне оралуға мүмкіндік береді. Әсіресе ыңғайлы диалогтық терезені бірнеше тәсілмен ашуға және бірнеше түрлі режимдерден шығаруға мүмкіндік беретін мұндай схемалар. Бұл жағдайда, сіз өтудің барлық бағыттарына диаграммада және бағдарламаны тексеруге арналған. Бұл өз мемлекетінің маңызды байланыстарын жоғалтпау үшін тәуекелмен күресудің қандай да бір жоспары жоқ бағдарламамен жұмыс істеуден гөрі сенімді әдіс.


жүктеу 4,91 Mb.

Достарыңызбен бөлісу:
1   ...   52   53   54   55   56   57   58   59   ...   91




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

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау