Tayanch so’zlar: Testlash vositalari. Test o’tkazish bosqichlari. Testlarni rasmiylashtirish, testni loyihalash, . testlash usullari. “Qora va Ok” quti usullari uslubologiyasi. Testlash – bu dasturiy maxsulotning ishlash jarayonida ishlamaydigan qismini topishdir.
Testlash dasturiy maxsulotning xatoliklarini tuzatishdagi asosiy usul xisoblanadi. Dasturni qayti tayѐrlash dasturiy maxsulotning yetishmovchiligini to‘ldirish jaraѐnidir. Agar dastur anchagina testlar to‘plamidan keyin xam to‘g‘ri natijalar chiqarib bersa, bu dasturda xato yo‘q degan asos bo‘lishi kerak emas. Bu paytda dasturni to‘g‘rilik darajasida gapirish mumkin.
Test – bu oldindan xisoblangan oraliq va oxirgi natijalari ma’lum bo‘lgan dasturning to‘g‘riligini nazorat qiluvchi vositadir. Testni shunday tanlab olish kerakki, dasturchi natijani testni ishlatishdan oldin xisoblab bilsin.
Testlash jarayoni bosqichlarga bo‘linadi: 1. Normal sharoitda tekshiruv 2. Ekstrimal sharoitda tekshiruv 3. Ayrim sharoitda tekshiruv Testlash prinsiplari: 1.Dasturiymaxsulotniishlanmasinitestlashniasosiymasaladebxisoblab, dasturchi yozgandasturnitestlashmaqsadgamuvofiqemas. 2. Dasturni to‘g‘riligini ko‘rsatadigan emas, balki xatolarni toppish extimoli katta bo‘lgan test. 3. Testlarni to‘g‘ri va to‘g‘ri bo‘lmagan qiymatlar uchun tayѐrlang. 4. Testlarni kompyuterda o‘tkazishni xujjatlashtiring, xar bir testning natijasini maydalab o‘rganing. 5. Xar bir modulni dasturga faqat bir marta ulang. Testlashni osonlashtirish uchun xech qachon dasturni o‘zgartiring. 6. Dasturiy maxsulotni tekshirish bilan bog‘liq bo‘lgan testlarni qayta o‘tkazish ѐki dasturiy maxsulotni ishlatish bilan va agar ko‘p o‘zgartirish kiritilgan bo‘lsa, boshqa dasturlar bilan bog‘liqligini tekshirish bilan bog‘liq bo‘lgan testlarni qayta o‘tkazib yuboring. Quyidagi masalaga testlar ѐzing. Parallelipiped diagonalining uzunligi formulasi bo‘yicha topiladi. Shu masalaga normal, ekstremal va ayrim xollar uchun test ѐzing. Dasturni testlash jarayonida muxum shartlardan biri shuki dasturlashga qancha vaqt sarf bo’lgan bo’lsa testlashga ham shuncha vaqt ajratish kerak. Chunki dasturlashda rejalashtirish ishlariga intilish (tendentciya) mavjud bo’lib, shuning uchun barcha loyxalarni muddatlarini buzgan xolda bajarilishini tushinish mumkin. Bu esa ishlab chiqishga, kodlashga, sozlashga va dasturni testlashga aloxida vaqtlar ajratishni va biron bir jarayonni bajarish vaqtini biror xaftaga surilsa, kolgan bosqichlarni bajarish mudatlari ham surilishini kuz oliga keltirishi kerak.
Test o’tkazish bosqichlari:
1. Normal sharoitda tekshirish.
2. Ekstremal sharoitda tekshirish.
3. Favqulot holatlarda tekshirish.
Normal sharoitda tekshirish.
Dasturni ishlash sharoitidan chiqan xolda olingan kiymatlar asosida tekshirish. Dastur normal sharoitda to’g’ri qiymatlar chiqarishini ko’rsatish kerak.
Ekstremal sharoitda tekshirish.
Bu tekshirishda dasturdagi o’zgaruvchilarning chegaraviy kiy matlari asosida test utkaziladi. Masalan: Eng kichik kiymatdan maksimal kiymatga ega (sonli o’zgaruvchi uchun) hamma belgilarni chop qilishi (belgilik o’zgaruvchilari uchun). Bu tekshirishda o’zgaruvchilarni nolg’ kiymati ham bo’ladi.
Favqulot holatda tekshirish.
Bu tekshirish o’zgaruvchining kiymatlar soxasidan tashqarida etgan kiymatlar asosida tekshirish qiladi.
Rejalashtirish.
Testdan o’tkazish jarayoni vaqtida dastur yozish bilan bir bo’lganligi hisobga olib testdan o’tkazishni ham rejalashtiriladi.
Testlash rejasiga odatda quyidagi tiplar kiradi.
1. Dasturni algoritm sxemasi bilan solishtirish.
2. Displey ekranida dasturni vizualg’ nazorat qilish yoki das-
turiy blankadagi originalni dastur raspechatkasini urganish, solishtirishni vizualg’ urganish.
3. Dasturni mashina tiliga olib ko’rsatish. Bu bosqichda sintaktik
xatolar aniqlanadi. Dastur listingidagi sintaktik xatolarni fortran, paskalp tilidagi ko’ramalar deagnostik xabar beradi.
Xatolar xaqidagi xabarlar har xil EVM larda va tizim versiyalarida (fortran, paskalp, beysik) shakliga qarab har xil bo’lishi mumkin.
Interpretatciyalovchi beysik - navbatdagi operatorni bajarishda xalakit kilaetgan ham sintaktik, ham semantiq xatolarni birdaniga diagnostika qiladi.
4. Dasturni kompanovkalash va tashki aloqalarni taxrirlash.
Tashqi aloqalarni taxrirlash jarayonida tashki aloqalar taxririy dasturi yoki vazifalarini tartiblovchi shunday sintaktik xatolarni aniqlaydiki, bu xatolarda kichik dasturlarda yozilgan prametrlar kiymati bir biriga mos kelmaydi, aslida yo’q bo’lgan standart dasturlarni chiqaradi. Masalan SIN o’rniga SIH va shunga o’xshash xatolar.
5. Dasturni bajarilishi.
Translyator va tashki aloqalar taxriri tomonidan barcha xatolar bartaraf etilgandan so’ng keyingi - EHM da dasturni mashina tilida bajarish bosqichiga utiladi:dastur operativ xotiraga yuklatiladi va boshlangich ma`lumotlar kiritilgandan so’ng boshlanadi. Xato borligi xaqida belgi paydo bo’lishi sozlash o’tkazishna sabab bo’ladi: belgi yo’qligi dasturda xato yo’qligini bildiradi.
Testlash rejasi boshlangich ma`lumotlarning ruxsat etilgan kiymatlarini xulosasini to’g’riligini ham tekshirishni uz ichiga jamlaydi. Dasturni testlashning oxirgi bosqichi o’zgartirishlarsiz ruxsat etilan chegarasidan tashqarida joylashgan kiymatlaridan iborat bo’lgan malumotlardan foydalangan xolda bajariladi. Dasturlarni favqulotda va qutilmagan xollarda tekshirishda bir necha maslaxatlar beriladi. Bu maslaxatlar tekshirish vaqtini tayerlashga yordam beradi.
Avvalambor taxrirlangan malumotlarni to’g’riligini tekshirish kerak bo’lsa, oldin ruxsat etilgan oblastni ikkala chegarasida etgan kiymatni oling, chunki shu kiymatlar dasturni ishlashida kiynchiliklar tugdirish extimoli yuqoriroq. Bir xilgi holatlarda qiyinchiliklarni bir nechta xatolarni jamlagan malumotlar tugdirishi mumkin. Xatoning yana bir turi - bu ishlov berilaetgan malumotning birligi yoki keyingi elementidagi xatolardir. Shuning uchun dastur uz ishini odatiy xolga o’xshab tugatmasligi muxumdir. Buning uchun teslashda yagona bir faylni formalansa etadi. Chunki bu fayl noto’g’ri elementdan tashkil topadi. Agar bu ishlash testlash bosqichida bajarilgan bo’lsa, dasturni eksplutatciya qilishda qiyinchiliklar yuzaga keladi.
Dasturni to’g’riligi.
Xamma dasturlar mantiqan olib karaganda ayrim bir ma`lumotlar ta`sir kursatuvchi xududlarni aniq ko’rsatishi, ya`ni dastur ish bajarish kobiliyatiga ega bo’lishi, malumotlarni kursatilgan chegaralarda turganligini aniqlash uchui operatorlarni kiritish imkoniga ega bo’lishi kerak.
Dasturni foydalanishga berishdan oldin uni to’g’riligigi ishonch xosil qilish kerak. Noto’g’rilikni aniqlashni ikkita usuli bor:
1. Dasturni konstruktciyasi sintaktik xato.
2. Dastur noto’g’ri natijalar ko’rsatmoqda.
Odatda dasturni testdan o’tkazishda bosqichlarga bo’lib urganiladi. Bunda har bir modulni tekshirishdan tortib, to butun tizimni yakuniy tekshirishlar kabi bosqichlarni oladi. Agar bunda biron bir ishonchli ketma - ketlikka endashilmasa, ishonchli ta`minlovchi dastur olish juda qiyindir. Testlash strategiyasi ikkita usuldan birortasiga asosan bajariladi: odatiy quyidan - yuqoriga qarab testlash, yoki zamonaviy yuqoridan - pastga qarab testlash. Quyidan - yuqoriga qarab testlash.
Bu usul keng tarkalgan usul bo’lib, unda eng kuyu pog’onadagi
boshlangich yozilgan modullar tekshiriladi. So’ngra yuqori qatlamdagi elementlar dasturlanadi va testlanadi. Bu jarayon to yozilgan dastur butunlay yakunlanmaguncha davom etadi. Quyidan - yuqoriga qarab testlash usuli xozirgi vaqtda yuqoridan - pastga qarab testlovchi va dasturchilvr tomonidan kulanmayapti. Ularni fikricha bu usulda interfeys va algoritmdagi ko’pgina xatolar aniqlanmay kolib ketmokda. Bu esa dasturni kayta-kayta o’zgartirishdan so’ng buzishga olib keladi.
Dasturchiga maslaxatlar.
- Nazorat qilish usullarining eng oz mikdordagisidan foydalarning.
- Dasturni sinashda xech qanday kamchiliklarga yo’l kuymagan holda, aqliy ravishda o’tkazing.
- Testlashni iloji boricha ertaroq boshlang.
- Tekshirishda kul mexnatidan foydalaning.
- Tizimni kurilish printciplarini to’g’riligini tekshirishda oddiy ko’rinishda qo’llashga xarakat qiling.
- Testlarni yuqoridan pastga qarab usulidan foydalanishga xarakat qiling.
- Navbatdagi har qanday testni yangi ma`lumotlar sinfidan foydalaning.
- Dasturni oddiy, eksteremal va favkulodda holatlarda tekshiring.
- Sinashga ketadigan vaqtni oldindan rejalashtiring.
- Dasturga kiritilgan o’zgartirishlardan so’ng uni yana testdan o’tkazing.