KompyuterlarDasturiy ta'minot

Sinov dasturi usullari va ularni taqqoslash. Testing "qora quti" sinov usuli va "oq quti" usuli

Test dasturi (SW) hal qilinishi kerak kodi bo'shliqlar, kamchilik va xatolarni aniqlash. Bu, shuningdek, tahlil qilish yordamida dasturiy funksiyalarini va to'g'ri baholash jarayonida sifatida belgilanishi mumkin. integratsiya va dasturiy ilovalar sinov asosiy usullari va sifat xususiyatlari, dizayn va kodlash, ishonchliligi baholash, aniqlash va tasdiqlash sinash uchun emas ta'minlash.

usullari

Dastur sinov asosiy maqsadi - diqqat bilan nazorat sharoitlarda muntazam nosozliklarni tuzatish ilovalar orqali dasturiy ta'minot tizimi sifatini tasdiqlash, ularning to'liq va aniqligini, shuningdek yashirin xatolar aniqlash aniqlash uchun.

tekshirish usullari (sinov) dasturlari statik va dinamik ajratish mumkin.

Sobiq norasmiy, monitoring va texnik ko'rib chiqishga, tadqiq, qadam tahlil, audit tomonidan qadam, shuningdek statik ma'lumotlar oqimi tahlil qilish va boshqarish o'z ichiga oladi.

Dinamik metodlarni:

  1. Oq menyu sinov. Bu dasturning ichki mantiq va tuzilishi batafsil o'rganish hisoblanadi. Bu manba kodi bilim kerak bo'ladi.
  2. Black Box viktorina. Bu metod qo'llash fikrini haqida hech qanday bilim talab qilmaydi. Biz tizimining faqat asosiy jihatlarini emas, balki bilan bog'liq yoki uning ichki mantiqiy tuzilishi bir necha bilan bog'liq deb hisoblayman.
  3. Grey box usuli. Bu avvalgi ikki yondashuvlarni birlashtiradi. qo'llash ichki faoliyat cheklangan bilim bilan Debugging tizimining asosiy jihatlarini bilim bilan birlashtirilgan.

shaffof sinov

oq quti usuli yordamida sinov skriptlari protsessual dizayn tuzilishini nazorat qiladi. Bu metod dasturiy fikrini bir qismini tahlil tomonidan bunday kambag'al boshqaruv kodi tizimi sifatida amalga oshirish xatolarni, oshkor qilish imkonini beradi. Bu sinov usullari integratsiya, modul va tizimlari darajada qo'llaniladi. Tester manba kodi foydalanish imkoniyatiga ega va noto'g'ri muomala qaysi birligi topish uchun foydalanishingiz kerak.

oq-qutisiga tomonidan dasturlarini test quyidagi afzalliklarga ega:

  • Bu keraksiz chiziqlar olishdan tomonidan yashirin kod bilan xato aniqlash imkonini beradi;
  • yon-ta'sirga foydalanish;
  • maksimal qamrov bir sinov skriptni yozib erishiladi.

Kamchiliklari:

  • malakali Ayıklayıcı talab yuqori baho jarayoni;
  • barcha mumkin bo'lgan yashirin xatolar to'la tekshirish juda murakkab, chunki ko'p prospektlar o'rganilmagan qoladi;
  • kodeksining ayrim sezdirmay o'tib bo'ladi.

Oq menyu sinov ba'zan oshkora yoki ochiq manba kodi asoslangan qutisini, tizimli, mantiqiy test, va mantiq arxitekturasini test tomonidan ataladi.

Asosiy navlari:

1) oqimi nazorat test - kam yanada murakkab ko'proq oddiy yo'llarini foydasiga tizimli usul dastur nazorat oqimi modeli yordamida va;

2) filiali, shuningdek, bir birlashgan yechim o'z ichiga oladi, har bir nazorat operatori) (haqiqiy yoki soxta har variantni nosozliklarni o'rganish uchun mo'ljallangan;

3) ijro yo'llari tayanch majmuini izolyatsiya uchun mantiqiy murakkabligi chora protsessual loyihasini barpo etish uchun arra beradi asosiy yo'ldan, sinovdan o'tkazish;

; E'lon haqida ma'lumot hisoblash va dastur o'zgaruvchilar foydalaning qo'shimcha tushuntirishlar tomonidan tadqiqot oqimi nazorat strategiyasini - 4) ma'lumotlar oqimini tekshirish

5) sinov davrlarini - to'liq tsiklik jarayonlarni to'g'ri foydalanishga qaratilgan.

xulq-nosozliklarini tuzatish

Black Box viktorina bir "qora quti" deb dasturiy ta'minot muomala - dasturining ichki faoliyati haqida axborot sanab, va tizimi faqat asosiy jihatlarini tekshiriladi emas. Bu holda, sinov manbai kodi bilan ta'minlanmagani tizimi me'morchiligi bilishi kerak.

Bu yondashuv afzalliklari:

  • katta kodi segmenti uchun samaradorligi;
  • idrok sinov tinchlik;
  • Foydalanuvchi istiqbolli aniq Tuzuvchi istiqbollarini (dasturchi va Tester bir-biridan mustaqil bo'lgan) bo'linadi;
  • sinov tez yaratish.

Test dasturi qora quti usul quyidagi kamchiliklari bor:

  • Albatta, cheklangan qamrovi, natijada sinov hollarda bir tanlang qator amalga;
  • test skriptlarni rivojlantirish qiyin aniq xususiyatlarining etishmasligi;
  • past samaradorligi.

Ushbu texnologiya uchun boshqa nomlari - qiziqishlariga, non-oshkora, funktsional sinov va bir yopiq qutiga nosozliklarini tuzatish usuli.

Ushbu turkumda quyidagi dasturiy ta'minot sinov usullarini o'z ichiga olishi mumkin:

1) kiritish dasturiy moduli ma'lumotlar alohida qismlarga bo'linadi sifatida sinov ma'lumotlar majmuini kamaytirish mumkin bo'lim, teng;

2) chegara qiymati tahlil chegaralari yoki ekstremal chegara qiymatlari tekshirish aratilgan - minimal, maksimal va xato, odatda qadriyatlar

3) havlanmanın - xatolarni yoki avtomatik yoki yarim avtomat rejimida buzuq ma'lumotlar poluiskazhennyh kirib Izlash amalga oshirish uchun ishlatiladi;

4) nedensellik soni - grafikalar yaratish va harakatlar va uning sabablari orasidagi munosabatni belgilash asosida uslubiyoti: yoki mantiqiy va mantiqiy VA shaxsini, rad, - to'rt asosiy belgi, sabab va natija o'rtasidagi munosabatlarni ifoda;

5) ortogonal, bia tekshirish mukammal tadqiqotlar ehtimoli kattaroq nisbatan kichik kiritish maydoni muammolarga tatbiq;

6) barcha juftlarni test - sinov qadriyatlar majmui kiritish parametrlarini har bir juft barcha mumkin bo'lgan o'zaro kombinasyonlarından o'z ichiga oladi uslubi;

7) nosozliklarini tuzatish davlat o'tish - mashinasining holatini tekshirish, shuningdek orqali harakat qilish uchun foydali bir uslub GUI foydalanuvchi.

Black Box viktorina: misollar

qora-box texnikasi dasturiy interfeysi yoki tizimi xususiyatlari, hujjatlar va tavsiflari asoslangan. Bundan tashqari, siz dasturiy ta'minotni kutilgan xatti vakili, (rasmiy yoki norasmiy) modellarni foydalanishingiz mumkin.

Odatda, bu usul foydalanuvchi interfeysi nosozliklarni uchun ishlatiladi va ma'lumotlar yig'ish va natijalarini joriy etish orqali ariza bilan o'zaro talab etiladi - hisobotlarida yoki bosim,, ekranda.

Tester, shuning uchun, kalitlarga, tugmalar yoki boshqa usulda haqida bajaruvchi tomonidan, Kirib, dasturiy ta'minot bilan o'zaro hamkorlik qiladi. Quyidagi misolda ko'rsatilgandek kiritish ma'lumotlar tanlash, ma'muriy yoki harakatlar ketma-ketlik tartibi, birikmalar katta umumiy sonining olib kelishi mumkin.

Qancha testlar, 4 Windows bayrog'i va bir-off maydon uchun barcha mumkin bo'lgan qiymatlari tekshirish uchun qilish kerak soniya vaqt belgilangan? birinchi ko'rish hisoblab oddiy: ikki mumkin davlatlar bilan 4 sohalar - 24 = 16, 99 00 dan mumkin o'rinlardan soniga ko'paytiriladi kerak, masalan, 1600 mumkin testlar.

Biroq, bu hisob noto'g'ri: ikki alfa soni pozitsiyadan iborat va shunday qilib boshqalar nomaqbul belgilar, maxsus belgilar, joylar, o'z ichiga olishi mumkin, ya'ni biz, ikki-nuqta joy, shuningdek, bir oraliq o'z ichiga olishi mumkin, deb aniqlash mumkin, agar .... tizimi 16-bit kompyuter, ular amalga bo'lsa 68.719.476 736. jami beradi bayroqlari 16 birikmalar ko'paytiriladi kerak paydo bo'lgan 4294967296 sinov hollarda har bir pozitsiya uchun 216 = 65536 biri navbati sekundiga 1 test, jami davomi da olzhitelnost sinov 2 177,5 yil. 32 yoki 64-bit tizimlari uchun, davomiyligi ham ko'proq.

Shuning uchun maqbul darajasi, ushbu davri kamaytirish uchun bir ehtiyoj bor. Shunday qilib, texnikada, test ko'lamini kamaytirish holda sinov hollarda sonini kamaytirish uchun qo'llanilishi kerak.

ekvivalentligi bölümlendirme

teng bo'lish Bu bo'lim biri teng kelgan barcha ma'lumotlar bilan bir xil yo'l muomala qilinadi, deb printsipiga asoslanadi kirish yoki chiqish qadriyatlar, ramziy, son, va boshqalar bo'lsin., dasturiy ta'minot mavjud bo'lgan har qanday o'zgaruvchilar uchun amal qiladi oddiy usuli hisoblanadi Shu ko'rsatmalar.

Sinov paytida, har bir alohida ekvivalentligi bo'lim biri vakili tanlab oldi. Bu sizga muntazam buyruqlar va vazifalarini yoritish halok holda imkon sinov hollarda sonini kamaytirish imkonini beradi.

Bu bulish uchun yana bir imkoniyat turli o'zgaruvchilar va sinov hollarda bog'liq kamaytirish o'rtasidagi kombinatoryel portlash kamaytirish.

Masalan, (1 / x) uchun 1/2 uch ma'lumotlar ketliklar, uch teng bo'lgan qismini foydalanib:

1. Barcha ijobiy raqamlari bir xil tarzda muomala qilinadi va to'g'ri natijalar berishi lozim.

2. Barcha salbiy raqamlari bir xil natija bilan bir xil tarzda ishlov beradi. salbiy qator ildiz tasavvuriydir, chunki bu, noto'g'ri bo'ladi.

3. Zero alohida ko'rib va "nol bilan bo'linishini," xato berishi kerak bo'ladi. Bu bitta qiymati bilan bir qism hisoblanadi.

Shunday qilib, biz bir qiymatiga kamaytiriladi biri uch alohida bo'lim, qarang. Bir ishonchli natijalarni beradi "to'g'ri" bo'limi, va noto'g'ri natijalar bilan ikkita "noto'g'ri" mavjud.

chegara qiymat tahlil

teng bulish chegaralari qayta ishlash kutilganidan boshqacha amalga oshirilishi mumkin. chegara qadriyatlar tergov - bunday joylarda dasturiy ta'minot xatti tahlil bir taniqli usuli. Bu uslub, bunday xatolarni aniqlash imkonini beradi:

  • İlişkisel operatorlari noto'g'ri foydalanish (<,>, =, ≠, ≥, ≤);
  • Yagona xato;
  • ko'chadan va iteratsiyadan muammolar,
  • noto'g'ri turlari yoki ma'lumotlarni saqlash uchun ishlatiladigan o'zgaruvchilar hajmi;
  • ma'lumotlar turlari va o'zgaruvchilar bilan bog'liq sun'iy cheklashlar.

Shaffof sinov

kulrang quti usuli sinov doirasi, qora va oq texnik birgalikda orqali tizimining barcha qiyin darajadagi tayanishimiz mumkin oshiradi.

Ushbu ibora foydalanish, test qadriyatlar rivojlantirish uchun Tester ichki ma'lumotlar tuzilmalari va algoritmlari bilim bo'lishi kerak. quyidagicha kulrang-box sinov usullari misollar:

  • me'moriy model;
  • Modellashtirish tili (UML) yagona;
  • Davlat model (cheklangan davlat mashinasi).

test ishlarni rivojlantirish kulrang qutisiga usuli oq muhandislik kodlari Module o'rganib, va haqiqiy sinov qora texnologiya dasturlari tutashgan joylarda amalga oshiriladi.

Bu sinov usullari quyidagi afzalliklarga ega:

  • afzalliklari texnik oq va qora qutilari uyg'unligi;
  • Tester interfeys va funktsional xususiyatlari, va manba kodi asoslangan;
  • tuzatuvchisi katta sinov ishlarni qilish mumkin;
  • tekshirish foydalanuvchi emas, balki dasturi dizayner nuqtai nazaridan amalga oshiriladi;
  • Custom test rivojlantirish yaratish;
  • xolislik.

Kamchiliklari:

  • manba kodi hech qanday foydalanish, chunki sinov doirasi cheklangan;
  • tarqatilgan dasturlarga nuqsonlarning murakkabligi;
  • ko'p yo'llari o'rganilmagan qoladi;
  • dasturiy ta'minot ishlab test boshlangan bo'lsa, keyin yanada tergov ortiqcha bo'lishi mumkin.

kulrang quti metodlarni uchun yana bir nomi - Shaffof nosozliklarni tuzatish.

Ushbu turkumda sinov kabi usullarini o'z ichiga oladi:

1) tik array - barcha mumkin bo'lgan birikmalar kœpligidan foydalanish;

2) dastur ma'lumotlarni holatini foydalanib Matritsa nosozliklarini tuzatish;

dasturiy ta'minot, yangi o'zgarishlar olib 3) regressiv tekshirish;

yaxshi dastur loyihalashtirishni va arxitekturasini tahlil 4) Andoza test.

dasturiy ta'minot sinov texnik solishtirish

dinamik usullari foydalanish, ishlab amalga va amalga oshirilishi kerak testlar soni kombinatorik portlash sabab bo'ladi. Har bir uslub hisobga uning cheklashlar olib, pragmatik foydalanish kerak.

mavjud emas faqat haqiqiy usuli, faqat muayyan ma'noda yaxshiroqdir mos ekanligini o'sha bor. Tuzilmaviy muhandislik bizga foydasiz yoki zararli kodni topish imkonini beradi, lekin ular murakkab va katta dasturlarga amal emas. jihatlarga asoslangan usullari - bedarak kodni aniqlash ega bo'lgan, faqat ular, lekin ular bir begona aniqlash mumkin emas. Ba'zi texnikasi boshqalardan ko'ra muayyan sinov darajasi, xato turi yoki nuqtai nazardan ko'proq mos keladi.

Quyida uch dinamik sinov texnik o'rtasidagi asosiy farqlar bor - dasturiy ta'minot nosozliklarni uch shakllari o'rtasida taqqoslash jadvali berilgan.

ko'rinish

qora quti usuli

Grey box usuli

Oq-box usuli

Dasturning tarkibi haqida ma'lumot mavjudligi

faqat asosiy jihatlarini tekshiradi

dasturning ichki tuzilishi haqida qisman bilim

manba kodini aniq kirish

Dasturning bo'linishi darajasi

past

markaziy

baland

Kim tuzatishni ishlab chiqaradi?

foydalanuvchilar, sinov va chiquvchilar tugatish

foydalanuvchilar, chiquvchilar va Debugger'lar tugatish

Ishlab chiquvchilari va sinov

asos

Testing tashqi favqulodda vaziyatlar asoslangan.

Diagrammalar bazasi, ma'lumotlar oqim chizmalarini, algoritm va me'morchilik ichki bilim davlat

ichki qurilma to'liq xabardor

qamrov darajasi

Kamroq keng qamrovli va vaqt kamida talab

markaziy

Portlash eng keng qamrovli. Vaqt talab

Ma'lumotlar va ichki chegaralari

faqat sinov va xatoliklar bilan Debug

ular ma'lum bo'lsa, ma'lumotlar domenlarini va ichki chegaralarini tekshirish mumkin

Eng yaxshi sinov ma'lumotlar domenlari va ichki chegaralari

Yaroqliligiga sinov algoritm

yo'q

yo'q

ha

avtomatizatsiya

Dastur sinov avtomatik usullari ko'p bo'lishidan qat'iy nazar, texnik atrof-muhit va matn tarkibini, tekshirish jarayonini soddalashtirish bo'ladi. Ular ikki hollarda ishlatiladi:

1) bu kabi arra muhimroq ball to'plash uchun vaqt ozod qilish uchun bir necha ming satr fayl taqqoslash kabi, zerikarli zerikarli yoki puxta vazifalarni avtomatlashtirish;

2) kuzatish yoki osonlikcha bunday ikkinchi salise o'lchanadi mumkin ishlashi tekshirish yoki tahlil javob vaqti sifatida odamlar tomonidan amalga oshirilishi mumkin emas vazifalarni amalga oshirish uchun.

Test vositalari turli xil yo'llar bilan tasniflanadi mumkin. Keyingi bo'limi ular qo'llab-quvvatlash vazifalar asoslangan:

  • loyiha boshqaruv qo'llab-quvvatlash, versiyalarini, konfiguratsiyalar, xavf tahlil qilish, test kuzatish, xatolar, kamchiliklar, va hisobot vositalari o'z ichiga oladi sinov boshqarish;
  • to'liqligi va noaniqlik, ularning ustuvorligi va har bir sinov izlenebilirliği uchun ularni tekshirish, saqlash talablariga va texnik xususiyatlarini o'z ichiga oladi talablar boshqarish;
  • tanqid va oqim monitoring va vazifalar, ro'yxatga olish va fikr-mulohazalar, nuqson aniqlash saqlash va yozuv kodi standartlariga muvofiq ta'minlash kamchiliklarini aniqlash uchun axborot manbai hujjatlar va kodi statik tahlil kuzatish nazorat ro'yxatlari va qoidalariga, rejalashtirilgan tuzatishlar boshqarish Ishoratlarni, shu jumladan statik tahlil, tuzilmalari va bog'liqliklar tahlil qilish, kodi va me'moriy metrik parametrlarini hisoblash. Bundan tashqari, kompilyatorlar, analizörleri, generatorlar va ko'ndalang murojaatnomalar munosabatlarni foydalanish;
  • modellashtirish ish xatti uchun vositalarni o'z ichiga oladi va modellar sinab modellashtirish;
  • test ishlab chiqish, yaratish yoki boshqarish, sharoit va xatarlar statistik tahlil qoidalar asosida fayllar va ma'lumotlar bazalarini, xabar, ma'lumot aniqlash o'zgartirish uchun boshqarish, sharoit va foydalanuvchi interfeysi modellar va kodi asosida kutilgan ma'lumotlar avlodni ta'minlaydi;
  • muvaffaqiyatli va muvaffaqiyatsiz sinovlari aniqlash yordam berish uchun karşılaştırıcıları foydalanib grafik foydalanuvchi interfeysi, API, buyruq liniyasi orqali ma'lumotlarni kiritish bilan tanqidiy nuqtai;
  • Agar belgilangan chiqish kœpligi, terminal emülatörlerine, mobil telefonlar va tarmoq uskunalari, tillarini, operatsion tizimlari va tekshirish uchun atrof-muhit asoslangan yilda jild. h. simulyatsiya uskunalar bedarak apparat yoki dasturiy ta'minot, almashtirish imkonini beradi qo'llab-quvvatlash nosozliklarni tuzatish atrof-muhit apparat yo'qolgan qismlar haydovchi almashtirish tomonidan, soxta to'plash va OS o'zgartirish uchun boshqalar modul, shuningdek vositalari CPU simulasyon cheklash, RAM, ROM yoki tarmoq talab .;
  • .. ma'lumotlar fayllari, ma'lumotlar bazalari, vaqtida va test jumladan dinamik, to'liq va ommaviy taqqoslash, Avtomatik "o'gitlari" keyin kutilgan natijalarni tekshirish solishtirish;
  • o'lchash, tahlil va tizim resurslari hisobot tekshirish uchun o'sish haqiqiy taxminiy benzetimli yuk keltiruvchi yuk ilovalar, ma'lumotlar bazalari, tarmoqlari yoki serverlar ostida xotira qochqinlarni mahalliylashtirish va noto'g'ri uning nazorat qilish, xatti baholash tizimi uchun o'lchash qoplama;
  • xavfsizligi;
  • Ishlash sinov, yuk va dinamik tahlil qilish;
  • Vol. Soat boshqa vositalari. Matn terish va sintaksisini, tekshirish uchun tarmoq xavfsizligini, barcha veb-sayt sahifalari va boshqa mavjudligini.

istiqbol

dasturiy ta'minot sohasida o'zgaruvchan trend, nosozliklarni tuzatish jarayoni ham o'zgartirilishi mumkin emas. bunday xizmat-orientirovannae arxitektura (SOA), simsiz texnologiyalar, mobil xizmatlar, va hokazo. E. sifatida dasturiy ta'minot sinov, yangi usullari, bor sinov dasturiy ta'minot, yangi yo'llarini ochdi. Keyingi bir necha yil davomida sohasida kutilmoqda o'zgarishlar ba'zilari quyida keltirilgan:

  • testers Dasturchilar sizning kodni tekshirish imkoniyatiga ega bo'ladi engil modelini taqdim etadi;
  • qarama ko'plab bartaraf etadi, ko'rish, shu jumladan, va erta bosqichda dasturlarini modellik sinov usullari, ishlab chiqish;
  • bir necha alıkonduğunu sinov mavjudligi xato aniqlash vaqti qisqartirishi bo'ladi;
  • Statik analizator va ochish yanada keng foydalanish uchun anglatadi;
  • Bunday spetsifikatsiyasi yoritish sifatida mineral matrisler, foydalanish, model va kodi qamrovi ko'lami loyihalarni ishlab chiqish belgilab beradi;
  • kombinatoryel vositalari testers nosozliklarni ustuvor yo'nalishlarini belgilash uchun imkon beradi;
  • testers dasturiy ta'minot ishlab chiqish jarayoni davomida yanada intuitiv va qimmatbaho xizmatlarni taqdim etadi;
  • Debugger'lar va dasturlash tillarida turli ta'sir o'tkazish yozilgan vositalari va dasturiy ta'minot sinov usullarini yaratish mumkin;
  • Debugging mutaxassislar yanada professional ta'lim qilinadi.

tizimlari bilan o'zaro hamkorlik yo'lini va xavflarni kamaytirish va biznes o'zgarishlar foyda oshirish esa ular bilan ta'minlash ma'lumotlarni o'zgartirish, yangi ish yo'naltirilgan dasturiy ta'minot sinov usullari bilan almashtiriladi.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 uz.atomiyme.com. Theme powered by WordPress.