Кіріспе
Бағдарламалық жасақтаманы сынауда сынақ скрипті — бұл жүйе қалай күтілгендей жұмыс істейтінін тексеру үшін сынақ жүргізіліп жатқан жүйеде орындалатын нұсқаулар жиынтығы.
Сынақ сценарийлерінің түрлері
Сынақ скрипттерін орындаудың әртүрлі тәсілдері бар. Соңғы екі түрі де қолмен тестілеуде жүзеге асырылады. Қолмен тестілеу. Бұлар көбінесе сынақ жағдайлары деп аталады. Автоматтандырылған тестілеу. Бұл бағдарламалық жүйенің функционалдық бөлігін тексеру үшін қолданылатын бағдарламалау тілінде жазылған қысқа бағдарлама. Қысқа бағдарлама түрінде жазылған сынақ скрипттерін арнайы автоматтандырылған функционалдық GUI тестілеу құралымен (мысалы, HP QuickTest Professional, Borland SilkTest, IBM TPNS және Rational Robot) немесе кең таралған бағдарламалау тілінде (мысалы, C++, C#, Tcl, Expect, Java, PHP, Perl, Powershell, Python немесе Ruby) жазуға болады. IEEE, ISO және IEC стандарттарында көрсетілгендей. Көптеген параметрлермен жабдықталған қысқа бағдарламалар, яғни деректерге негізделген тестілеу. Кестеде құрылған, қайта пайдаланылатын қадамдар, басқаша айтқанда, кілт сөздерге немесе кестеге негізделген тестілеу.
Reusable steps created in a table a. k. a. keyword driven or table driven testing.
Пайдалану және функционалдық
Автоматтандырылған тестілеуді адамның араласуынсыз үздіксіз орындауға болады, оларды қайталау оңай және көбінесе жылдам. Автоматтандырылған сынақтар, сынақ бірнеше рет орындалуы тиіс жағдайларда, мысалы, регрессиялық тестілеудің бөлігі ретінде пайдалы. Автоматтандырылған тестілеулер нашар жазылған жағдайда кемшіліктері болуы мүмкін, бұл дұрыс емес тестілеуге немесе бұзылған сынақтардың орындалуына әкелуі мүмкін. Автоматтандырылған тестілеулер, кез келген бағдарламалық қамтамасыздай, нашар жазылуы немесе ойнату кезінде бұзылуы мүмкін. Олар тек бағдарламаланған нәрсені ғана тексеруге қабілетті. Көптеген жүйелер адамдардың өзара әрекеттесуін ескере отырып жасалғандықтан, жүйені белгілі бір уақытта адамның тексеруі жақсы тәжірибе болып саналады. Оқытылған қолмен тестілеуші, сыналатын жүйенің қалыптан тыс әрекет ететінін ешқандай сұраусыз немесе бағытталмастан байқай алады; ал автоматтандырылған тестілеулер тек бағдарламаланған нәрсені тексеруге болады. Регрессиялық тестілеуде қолмен тестілеушілер жаңа қателерді таба алады және ескі қателердің қайта пайда болмауын қамтамасыз етеді, ал автоматтандырылған тестілеулер тек соңғысын ғана қамтамасыз етеді. Автоматтандырылған және қолмен тестілеудің аралас түрлері жиі қолданылады; жиі тестілеу қажет нәрсені автоматтандыру және оны машинамен оңай тексеруге болады, ал тестілеуді жобалау және зерттеу тестілеуін жүргізу үшін қолмен тестілеуді пайдалану. Кез келген тест сценарийін автоматтандыру үшін инвестицияның қайтарымын қарастыру қажет, яғни сценарийді жасау және күтіп ұстау құны, оны қолмен орындауға кеткен шығыннан кем болуы керек. Мұндағы шығындар уақыт және/немесе ақшамен өлшенуі мүмкін, сонымен қатар адамдарды басқа жұмыстарға босатудың мүмкіндік шығыны да ескерілуі керек.