Кіріспе

Бағдарламалық жасақтаманы сынау әдісі

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

Сынау әдістері

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

Сынақ жағдайлары

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

Сынақ жобалау әдістері

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

Сынақ көлемі

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

Тиімділігі

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