Dasturiy ta'minot testi yoki dasturiy ta'minotni sinovdan o'tkazish, shuningdek, amaliy test sifatida ham tanilgan.
Dasturiy ta'minotni sinovdan o'tkazish, birinchi navbatda, bir nechta o'zaro bog'liq jarayonlardan tashkil topgan katta jarayondir. Dasturiy ta'minotni sinovdan o'tkazishning asosiy maqsadi dasturiy ta'minotning yaxlitligini va uning asosiy talablari bo'yicha to'liqligini o'lchashdir. Dasturiy ta'minotni sinovdan o'tkazish turli xil sinov jarayonlari orqali dasturiy ta'minotni tekshirish va sinovdan o'tkazishni o'z ichiga oladi. Ushbu jarayonlarning maqsadlari quyidagilarni o'z ichiga olishi mumkin:
Funktsional/biznes talablariga muvofiq dasturiy ta'minotning to'liqligini tekshirish
Xatolarni/texnik xatolarni aniqlash va dasturiy ta'minotning xatosiz bo'lishini ta'minlash
Foydalanish, ishlash, xavfsizlik, mahalliylashtirish, moslik va o'rnatishni baholash
Sinovdan o'tgan dasturiy ta'minot to'liq yoki foydalanishga yaroqli bo'lishi uchun barcha testlardan o'tishi kerak. Dasturiy ta'minotni sinovdan o'tkazish usullarining ayrim turlariga oq quti sinovi, qora quti testi va kulrang quti testi kiradi. Bundan tashqari, dasturiy ta'minot butunlay, komponentlar/birliklarda yoki jonli tizim ichida sinovdan o'tkazilishi mumkin.
Black Box Testing - bu tizimning ichki ishlashiga nisbatan dasturiy ta'minotning funksionalligini tahlil qilishga qaratilgan dasturiy ta'minotni sinovdan o'tkazish usuli. Qora quti testi mijozlar talablari, spetsifikatsiyalari va yuqori darajadagi dizayn strategiyalarini tahlil qilish usuli sifatida ishlab chiqilgan.
Black Box Testing testeri yaroqli va yaroqsiz kod bajarilishi va kiritish shartlari to'plamini tanlaydi va to'g'ri chiqish javoblarini tekshiradi.
Qora quti testi funktsional test yoki yopiq quti testi sifatida ham tanilgan.
Qidiruv tizimi qora quti sinovidan o'tiladigan dasturning oddiy misolidir. Qidiruv tizimi foydalanuvchisi veb-brauzerning qidirish satriga matn kiritadi. Keyin qidiruv tizimi foydalanuvchi ma'lumotlari natijalarini topadi va oladi (chiqish).
Qora quti testining afzalliklari quyidagilardan iborat:
Qora quti testining quyidagi kamchiliklari ham bor:
Oq quti sinovi paytida kod oldindan tanlangan chiqish qiymatlarini tasdiqlash uchun oldindan tanlangan kirish qiymatlari bilan ishga tushiriladi. Oq quti testi ko'pincha stub kodini (muayyan xususiyatni almashtirish uchun ishlatiladigan kod qismi. stub masofaviy mashinadagi protsedura kabi mavjud kodning harakatini taqlid qilishi mumkin) va shuningdek, drayverlarni yozishni o'z ichiga oladi.
Oq quti testining afzalliklari quyidagilardan iborat:
Kamchiliklarga quyidagilar kiradi:
Birlik testi dasturiy ta'minotni ishlab chiqish hayotiy tsiklining (SDLC) tarkibiy qismi bo'lib, unda kerakli yaroqlilik yoki xatti-harakat uchun dasturiy ta'minot dasturining eng kichik qismlariga har tomonlama sinov jarayoni individual ravishda qo'llaniladi.
Birlik testi ko'pgina korporativ dasturiy ta'minotni ishlab chiqishda qo'llaniladigan sifatni o'lchash va baholash protsedurasidir. Umuman olganda, birlik testi dasturiy ta'minot kodi dasturiy ta'minot/ilova/dasturning umumiy maqsadiga qanchalik mos kelishini va uning muvofiqligi boshqa kichikroq birliklarga qanday ta'sir qilishini baholaydi. Birlik testlari qo'lda - bir yoki bir nechta ishlab chiquvchilar tomonidan yoki avtomatlashtirilgan dasturiy yechim orqali amalga oshirilishi mumkin.
Sinov paytida har bir birlik asosiy dastur yoki interfeysdan ajratilgan. Birlik testlari odatda ishlab chiqishdan keyin va joylashtirishdan oldin amalga oshiriladi, bu integratsiyani va muammolarni erta aniqlashni osonlashtiradi. Birlik hajmi yoki ko'lami dasturlash tili, dasturiy ta'minot ilovasi va test maqsadlariga qarab o'zgaradi.
Funktsional test - bu dasturiy ta'minotni ishlab chiqishda qo'llaniladigan sinov jarayoni bo'lib, unda dasturiy ta'minot barcha talablarga muvofiqligini ta'minlash uchun sinovdan o'tkaziladi. Bu dasturiy ta'minotni uning funktsional talablarida ko'rsatilgan barcha kerakli funksiyalarga ega ekanligini tekshirishning bir usuli.
Funktsional test, asosan, dasturiy ta'minotning bir qismi oxirgi foydalanuvchi yoki biznes tomonidan talab qilinadigan natijalarni ta'minlashini tekshirish uchun ishlatiladi. Odatda, funktsional test har bir dasturiy ta'minot funktsiyasini biznes talablari bilan baholash va taqqoslashni o'z ichiga oladi. Dasturiy ta'minot unga ba'zi tegishli ma'lumotlarni berish orqali sinovdan o'tkaziladi, natijada uning asosiy talablariga qanday mos kelishi, ular bilan bog'liqligi yoki farqlanishini ko'rish uchun chiqish baholanishi mumkin. Bundan tashqari, funktsional testlar dasturiy ta'minotning yaroqliligini ham tekshiradi, masalan, navigatsiya funktsiyalari kerak bo'lganda ishlashiga ishonch hosil qilish.
Regressiya testi - bu dasturiy ta'minotni o'zgartirish natijasida yangi muammolar paydo bo'lganligini aniqlash uchun ishlatiladigan dasturiy ta'minotni sinovdan o'tkazish turi.
O'zgartirishni qo'llashdan oldin dastur sinovdan o'tkaziladi. O'zgartirish qo'llanilgandan so'ng, dastur tanlangan sohalarda qayta sinovdan o'tkaziladi, bu o'zgartirish yangi xatolar yoki muammolarni keltirib chiqarganmi yoki haqiqiy o'zgarish o'z maqsadiga erishganmi yoki yo'qmi.
Regressiya testi katta dasturiy ta'minot ilovalari uchun juda muhim, chunki muammoning bir qismini o'zgartirish dasturning boshqa qismi uchun yangi muammo tug'dirganligini bilish ko'pincha qiyin. Misol uchun, bankdan kredit olish uchun ariza shaklini o'zgartirish oylik tranzaksiya hisobotining bajarilmasligiga olib kelishi mumkin. Ko'pgina hollarda, muammolar bir-biriga bog'liq bo'lmagandek tuyulishi mumkin, ammo ular aslida dastur ishlab chiquvchilari orasida umidsizlikka sabab bo'lishi mumkin.
Regressiya testini talab qiladigan boshqa holatlarga ma'lum o'zgarishlarning belgilangan maqsadga erishganligini aniqlash yoki muammosiz vaqtdan keyin qayta paydo bo'ladigan muammolar bilan bog'liq yangi xavflarni tekshirish kiradi.
Zamonaviy regressiya testi, birinchi navbatda, mavjud dasturiy ta'minotning suratlarini oladigan maxsus tijorat sinovlari vositalari orqali amalga oshiriladi, ular keyinchalik ma'lum bir o'zgarish qo'llanilgandan so'ng solishtiriladi. Inson sinovchilari uchun avtomatlashtirilgan dasturiy ta'minot sinovchilari kabi bir xil vazifalarni samarali bajarish deyarli mumkin emas. Bu, ayniqsa, banklar, shifoxonalar, ishlab chiqarish kompaniyalari va yirik chakana sotuvchilar kabi yirik IT muhitlaridagi yirik va murakkab dasturiy ilovalarga tegishli.
Stress-test deganda tarmoq trafigining og'irligi, jarayonning yuklanishi, past tezlik, overclock va resurslardan foydalanishning eng yuqori talablari natijasida yuzaga kelishi mumkin bo'lgan ekstremal va noqulay sharoitlarda uning ishlashi qoniqarli yoki yo'qligini aniqlash uchun dasturiy ta'minot yoki apparatni sinovdan o'tkazish tushuniladi.
Aksariyat tizimlar normal ish sharoitlarini hisobga olgan holda ishlab chiqilgan. Shuning uchun, agar chegara oshib ketgan bo'lsa ham, tizimni ishlab chiqish jarayonida stress sinovidan o'tgan bo'lsa, xatolar ahamiyatsiz bo'ladi.
Stress testi quyidagi kontekstlarda qo'llaniladi:
Avtomatlashtirilgan test (dasturiy ta'minotni sinovdan o'tkazishni avtomatlashtirish) - bu testlarni avtomatik ravishda amalga oshiradigan va keyin haqiqiy test natijalarini kutilgan natijalar bilan taqqoslaydigan maxsus dasturiy vositalardan foydalanadigan kod sinoviga yondashuv.
Avtomatlashtirilgan test Continuous Delivery (CD), Continuous Integration (CI), DevOps va DevSecOps da muhim rol o'ynaydi. Avtomatlashtirilgan testning asosiy afzalliklari quyidagilardan iborat:
Dasturiy ta'minotni ishlab chiqishda, ayniqsa, dasturni qurish xatolaridan xoli bo'lishini va o'z vazifasini bajarishini ta'minlash uchun qurish jarayonida avtomatlashtirilgan testlarni o'tkazish foydalidir.
Dasturiy ta'minotni sinovdan o'tkazishni avtomatlashtirishga vaqt ajratish, kodni o'zgartirish mavjud funksionallikni buzish xavfini kamaytirish orqali ishlab chiquvchilarning vaqtini tejaydi.
Sinov rivojlanish jarayonida juda muhim bosqichdir. Barcha xatolar tuzatilganligini va mahsulot, dasturiy ta'minot yoki apparatning mo'ljallangan yoki iloji boricha maqsadli ishlashiga yaqin ishlashini ta'minlaydi. Foydalanuvchilarning ehtiyojlarini o‘z vaqtida, minimal nuqsonlar bilan qondiradigan, tejamkor dasturiy ta’minotni doimiy ravishda yetkazib berish uchun qo‘lda sinovdan o‘tkazishdan ko‘ra avtomatlashtirilgan sinov muhim ahamiyatga ega.
Qo'lda sinov hali ham ishlab chiqishning turli vaqtlarida amalga oshiriladi, lekin bu asosan ishlab chiquvchilar yoki apparat muhandislarining o'zlari tomonidan kiritilgan o'zgarishlar kerakli ta'sirga ega bo'lganligini tezda ko'rish uchun amalga oshiriladi.
Ercole Palmeri
Kataniya poliklinikasida Apple Vision Pro tijorat ko‘rish vositasi yordamida oftalmoplastika operatsiyasi o‘tkazildi...
Rang berish orqali nozik vosita ko'nikmalarini rivojlantirish bolalarni yozish kabi murakkabroq ko'nikmalarga tayyorlaydi. Rang berish uchun…
Harbiy dengiz sektori 150 milliardlik bozorga yo'l olgan haqiqiy global iqtisodiy kuchdir...
O'tgan dushanba kuni Financial Times OpenAI bilan shartnoma imzolaganini e'lon qildi. FT o'zining jahon darajasidagi jurnalistikasini litsenziyalaydi...