§ 6.4. Tekshirish vositalari
XUnit vositalari ishlab chiqilgan har bir modulning to’g’ri ishlashini tekshirish uchun ishlatiladi va shu bilan birga maksimal kod qamrovini ta’minlaydi. XUnit frameworklari testlarni avtomatlashtirish texnologiyalari orasida eng keng tarqalgan bo’lib, test vaziyatlarni maxsus tillarda tasvirlash va ularni avtomatik ravishda bajarish imkonini beradi.
Belgilangan test vositalari test ma’lumotlarini yaratadi, bu esa turli xil integratsiyalangan modullarning to’g’ri ishlashini tekshirish imkonini beradi. Belgilash va almashtirish vositalari tizimning to’g’riligi va to’liqligini tekshirish uchun, shu jumladan qabul qilish sinovlari paytida qo’llaniladi. Ushbu vositalar test qiluvchilarning ilova bilan o’zaro aloqalarini qayd etib, keyinchalik avtomatik ravishda ishga tushirilishi mumkin bo’lgan test ssenariylarini yaratadi. Dasturlash tillari kabi test vositalari ham shunchalik ko’p.
Xizmat ko’rsatishni nazorat qilish vositalari. Ular dastlabki kodni tahlil qilish va modullilik, o’qish va hokazolar qoidalariga muvofiqligini tekshirish imkonini beradi. Foydalanish qulayligini boshqarish vositalari. Ular haqiqiy foydalanuvchilar bilan ishlash jarayonida dasturiy mahsulotni baholash uchun ishlatiladi. Shu bilan
birga, bunday vositalar foydalanuvchi interfeysini foydalanuvchilarning o’zlari ishtirokisiz tekshirish imkonini beradi.
Xavfsizlikni nazorat qilish vositalari. Tizimdagi zaifliklarni aniqlash va kerakli funksionallikni saqlab qolgan holda ma’lumotlarni himoya qilishi yoki yo’qligini aniqlash imkonini beradi. Xususan, himoya sinov vositalari skanerlash va zaifliklarni topish va ulardan foydalanishga qaratilgan boshqa harakatlar orqali dasturiy taʼminot tizimi yoki tarmoqqa hujumlarni imitatsiya qiladi. Ular axloqiy yoki oq xakerlik vositalari deb ham ataladi.
Unumdorlikni tekshirish vositalari. Tizimning ish bosimi ostida qanchalik tez ishlashini aniqlash imkonini beradi. Ushbu vositalar ilovadagi nuqsonlarni topish uchun mo’ljallanmagan, lekin o’lchanadigan xususiyatlarni baholash uchun ishlatiladi: javob vaqti, o’tkazish qobiliyati va boshqalar.
Uzluksiz verifikatsiya va validatsiya vositalari. Uzluksiz sifatni ta’minlash tamoyili rivojlanishning barcha bosqichlarida verifikatsiya va validatsiya jarayonlarining yaqin integratsiyasini nazarda tutadi. Odatiy misol sinov asosida ishlab chiqish bo’lib, unda dasturiy ta’minot ishlab chiqilishidan oldin sifat maqsadlari belgilanadi. DevOps asoslaridan biri boʻlgan uzluksiz integratsiyaning afzalliklarini hisobga olgan holda, nafaqat verifikatsiya va validatsiyani avtomatlashtirishga, balki ushbu jarayonlarni ishlab chiqish tsikliga integratsiyalashga yordam beradigan vositalarga katta eʼtibor qaratilmoqda.
Jenkins, Travis CI, Bamboo, GoCD, Ansible vositalari uzluksiz integratsiyalashgan muhitda sifat xususiyatlarini tekshirish imkonini beradi. Verifikatsiya va validatsiyani dasturiy ta’minotning hayot aylanishiga kiritish talab qilinadi, bu esa jarayonlarni ishlab chiquvchilar uchun mos keladigan avtomatik va shaffof bajarilishini ta’minlaydi. Bu instrumentlar bir nechta sifat xususiyatlarini tasdiqlaydi va global baholash va vizualizatsiya uchun ma’lumotlarni taqdim etadi. Uzluksiz verifikatsiya va validatsiyajarayonlari modulli sinov, belgilash va almashtirish, hamda statik tahlil vositalaridan ham foydalanishi mumkin.
Ro’yxatdagi barcha turdagi vositalar yordamida bajarilgan harakatlarni boshqarish va umuman verifikatsiya va validatsiya jarayonini boshqarish uchun test
ishini boshqarish vositalaridan foydalaniladi: Test Link, Test Rail, Microfocus Quality Center, VSTS, IBM Rational Quality Manager, XStudio va boshqalar.
Zamonaviy jamiyat iqtisodiyotning barcha tarmoqlarining dvigateliga aylangan dasturiy ta’minotga tobora ko’proq qaram bo’lib bormoqda va shuning uchun dasturiy ta’minot sifatiga talablar ortib bormoqda. Tegishli jarayonlarni avtomatlashtirish usullari va texnologiyalaridan foydalanish infratuzilmalarni himoya qilishning ajralmas elementiga aylanmoqda. Zamonaviy dunyoda kiberxavfsizlik tahdidlari sonining ortib borishi va ilovalardan foydalanishdagi noqulayliklar tufayli yuzaga keladigan muammolar bilan bog’liq xavflar tobora ko’payib bormoqda. Bu shuni anglatadiki, biz tekshirish va tasdiqlash texnologiyalarini rivojlantirishni jadallashtirishimiz, shuningdek, tizimlar ishonchliligini oshirish bo’yicha sa’y-harakatlarni ikki baravar oshirishimiz kerak. Xususan, dasturiy ta’minot imkoniyatlarining saqlanib qolishi va uning nosozlik sharoitida ishlashi stsenariylari talab qilinadi.
Dasturiy ta’minot sifatini ta’minlash strategiyasining asosini tashkil etishi kerak bo’lgan doimiy verifikatsiya va validatsiya mahsulot chiqarilgandan so’ng muhim zaifliklarni aniqlash va yangi hujumlar paydo bo’lishining oldini olishga yordam beradi. Simsiz tarmoq ulanishlari yordamida tuzatishlar va o’zgartirishlar kiritish uchun sizga moslashuvchanlik kerak. Tizimlarda eng so’nggi dasturiy ta’minot yangilanishlari o’rnatilmagan bo’lsa, ishga tushishining oldini olish uchun mexanizmlar kerak bo’ladi. Ushbu tizimlarga transport vositalari, ishlab chiqarish liniyalari va ayniqsa yuqori darajadagi xavfsizlikni talab qiladigan boshqa uskunalar kiradi. Bu tibbiy texnologiyalarga ko’proq taalluqlidir - bu sifatni nazorat qilishning ierarxik tizimini talab qiladi.
Verifikatsiya va validatsiya tizimlarini tanlash ko’plab omillar bilan belgilanadi. Amaldagi rivojlanish muhitiga qarab, turli tashkilotlardagi tegishli jarayonlar o’ziga xos xususiyatlarga ega va turli xil vositalar kombinatsiyasiga asoslanadi. Shu bilan birga, nafaqat asboblarning o’zini amalga oshirish, tegishli vakolatlarni rivojlantirish va sinov strategiyasini yaratish muhimdir. Inson omili
bilan bog’liq xavflarni bartaraf etish muhim nuqtalar va nuqsonlarni ilg’or avtomatik aniqlashni talab qiladi.
Sun’iy intellekt texnologiyalarining joriy etilishi bilan tegishli tizimlar faoliyatining shaffofligini ta’minlash zarurati tug’iladi - mijozga kredit berish mumkinmi yoki qanday qilib neyron tarmoq qanday qoidalardan foydalanishini tushunish kerak. robot-avtomobil bir nechta xavfli vaziyatlarning qo’shilishida reaksiyaga kirishadi. Bunday hollarda klassik regressiya testlari va kuzatuvlar yordam bermaydi. Yangi avlodlarni verifikatsiya va validatsiya vositalarida katta ma’lumotlarga asoslangan, tahlil qilish, o’z-o’zini o’rganish va dasturiy ta’minot sifatini avtomatik ravishda yaxshilashga qodir bo’lgan aqlli mexanizmlar tobora ko’payib boradi.
Aristotel: “Komillik harakat emas, balki odatdir” degan. Instrumentlarning keng doirasi muhim, lekin asosiysi, dasturiy ta’minot sifatini ta’minlash madaniyatini yaratish va tegishli ko’nikmalarni egallashdir.
Dasturiy ta’minotni ishlab chiqishdagi asosiy muammolardan biri bu dasturiy ta’minotni tekshirishdir. Dasturiy ta’minotni tekshirish vositalari e’lon qilingan yakuniy dasturiy mahsulot talablarini tasdiqlash uchun maxsus yaratilgan, dasturiy ta’minotni tekshirishning maqsadi xatolar, noto’g’ri xususiyatlar va dastur zaifligini aniqlashdir. Dasturiy ta’minotni tekshirish usullarining yangi tasnifini shakllantirish dolzarb muammo bo’lib, mavjud dasturiy ta’minotni tekshirish usullarini ko’rib chiqish, ularning afzalliklari va kamchiliklarini aniqlash imkonini beradi. Mavjud usullarni tasniflash va tahlil qilish SMT - hal qiluvchi printsipiga muvofiq kelajakdagi tadqiqotlar va dasturiy ta’minotni tekshirishning sintetik usulini ishlab chiqish uchun talablar va tavsiyalar ro’yxatini yaratishga imkon beradi.
Zamonaviy tekshirish usullarini empirik (ekspertiyadan foydalanadiganlar), rasmiy (dasturiy ta’minotni tekshirishning matematik apparatidan foydalanadigan) va rasmiy (dasturni ishga tushirish orqali tekshiradigan) va avtomatlashtirish darajalariga bo’lish mumkin, avtomatlashtirish darajalari qo’lda, avtomatik va avtomatlashtirilgan. Dasturiy ta’minotni tekshirishning asosiy maqsadlaridan biri yaratilgan dasturiy kodni texnik xususiyatlar va uning funksionallik talablariga
muvofiqligini tekshirishdan iborat. Hujjatlar va dasturiy kodlarni me’yorlar va standartlar va ijrolar bilan tekshirishda mamlakatda, tarmoqda va tashkilotda o’rnatilgan ekspertizadan foydalaniladi. Imtihonning o’zi ixtisoslashtirilgan va umumiy bo’lishi mumkin.
Do'stlaringiz bilan baham: |