Proqram testi və ya proqram testi tətbiq testi kimi də tanınır.
Proqram təminatının sınaqdan keçirilməsi, ilk növbədə, bir-biri ilə əlaqəli bir neçə prosesdən ibarət böyük bir prosesdir. Proqram təminatının sınaqdan keçirilməsinin əsas məqsədi proqram təminatının tamlığı ilə yanaşı onun fundamental tələbləri baxımından tamlığını ölçməkdir. Proqram təminatının sınağı müxtəlif sınaq prosesləri vasitəsilə proqram təminatının yoxlanılmasını və sınaqdan keçirilməsini əhatə edir. Bu proseslərin məqsədləri aşağıdakıları əhatə edə bilər:
Funksional/biznes tələblərinə uyğun olaraq proqram təminatının tamlığının yoxlanılması
Səhvlərin/texniki xətaların müəyyən edilməsi və proqram təminatının səhvsiz olmasını təmin etmək
İstifadənin, performansın, təhlükəsizliyin, lokalizasiyanın, uyğunluğun və quraşdırılmasının qiymətləndirilməsi
Test edilmiş proqram tam və ya istifadəyə yararlı olmaq üçün bütün testlərdən keçməlidir. Müxtəlif növ proqram test üsullarından bəzilərinə ağ qutu sınağı, qara qutu sınağı və boz qutu sınağı daxildir. Bundan əlavə, proqram bütövlükdə, komponentlərdə/vahidlərdə və ya canlı sistem daxilində sınaqdan keçirilə bilər.
Qara Qutu Testi, sistemin daxili işlərinə münasibətdə proqram təminatının funksionallığını təhlil etməyə yönəlmiş bir proqram test üsuludur. Qara Qutu Testi müştəri tələblərini, spesifikasiyaları və yüksək səviyyəli dizayn strategiyalarını təhlil etmək üçün bir üsul kimi hazırlanmışdır.
Qara Qutu Testi test cihazı etibarlı və etibarsız kod icrası və daxiletmə şərtləri toplusunu seçir və etibarlı çıxış cavablarını yoxlayır.
Qara qutu testi funksional test və ya qapalı qutu testi kimi də tanınır.
Axtarış motoru qara qutu sınağına məruz qalan tətbiqin sadə nümunəsidir. Axtarış motorunun istifadəçisi veb brauzerin axtarış çubuğuna mətn daxil edir. Axtarış motoru daha sonra istifadəçi məlumatlarının nəticələrini (çıxışını) tapır və götürür.
Qara Qutu Testinin üstünlüklərinə aşağıdakılar daxildir:
Qara Qutu Testinin də aşağıdakı kimi çatışmazlıqları var:
Ağ qutu sınağı zamanı kod əvvəlcədən seçilmiş çıxış dəyərlərini təsdiqləmək üçün əvvəlcədən seçilmiş giriş dəyərləri ilə işlədilir. Ağ qutu testi tez-tez stub kodunun (müəyyən funksiyanı əvəz etmək üçün istifadə edilən kod parçası. Köpük uzaq maşındakı prosedur kimi mövcud kodun davranışını simulyasiya edə bilər.) və həmçinin sürücülərin yazılmasını əhatə edir.
Ağ qutu testinin üstünlüklərinə aşağıdakılar daxildir:
Dezavantajlara aşağıdakılar daxildir:
Vahid Testi Proqram İnkişafı Həyat Dövrünün (SDLC) komponentidir ki, burada hərtərəfli test proseduru fərdi olaraq proqram proqramının ən kiçik hissələrinə istənilən uyğunluq və ya davranış üçün tətbiq edilir.
Vahid testi əksər müəssisə proqram təminatının yaradılması fəaliyyətlərində tətbiq olunan keyfiyyətin ölçülməsi və qiymətləndirilməsi prosedurudur. Ümumiyyətlə, vahid testi proqram kodunun proqram təminatının/tətbiqin/proqramın ümumi məqsədinə nə dərəcədə uyğun olduğunu və onun uyğunluğunun digər kiçik vahidlərə necə təsir etdiyini qiymətləndirir. Vahid testləri əl ilə - bir və ya daha çox tərtibatçı tərəfindən və ya avtomatlaşdırılmış proqram həlli vasitəsilə edilə bilər.
Test zamanı hər bir bölmə əsas proqramdan və ya interfeysdən təcrid olunur. Vahid testləri adətən inkişafdan sonra və yerləşdirmədən əvvəl həyata keçirilir, beləliklə inteqrasiya və problemlərin erkən aşkarlanması asanlaşır. Vahidin ölçüsü və ya əhatə dairəsi proqramlaşdırma dilindən, proqram təminatından və test məqsədlərindən asılı olaraq dəyişir.
Funksional test proqram təminatının bütün tələblərə uyğunluğunu təmin etmək üçün sınaqdan keçirildiyi proqram təminatının hazırlanmasında istifadə edilən sınaq prosesidir. Bu, proqram təminatının funksional tələblərində göstərilən bütün tələb olunan funksiyalara malik olmasını yoxlamaq üçün bir üsuldur.
Funksional test, əsasən, bir proqram parçasının son istifadəçi və ya biznes tərəfindən tələb olunan eyni nəticəni təmin etdiyini yoxlamaq üçün istifadə olunur. Tipik olaraq, funksional test hər bir proqram funksiyasının biznes tələbləri ilə qiymətləndirilməsini və müqayisəsini əhatə edir. Proqram təminatı ona bəzi əlaqəli daxiletmələr verməklə sınaqdan keçirilir ki, çıxış onun əsas tələblərə necə uyğun gəldiyini, onlarla əlaqəli olduğunu və ya onlardan fərqli olduğunu görmək üçün qiymətləndirilə bilsin. Bundan əlavə, funksional testlər həmçinin proqram təminatının yararlılığını yoxlayır, məsələn, naviqasiya funksiyalarının tələb olunduğu kimi işlədiyini yoxlayır.
Reqressiya testi yeni problemlərin proqram dəyişikliklərinin nəticəsi olub-olmadığını müəyyən etmək üçün istifadə edilən proqram testinin bir növüdür.
Dəyişikliyi tətbiq etməzdən əvvəl proqram sınaqdan keçirilir. Dəyişiklik tətbiq edildikdən sonra proqram dəyişikliyin yeni səhvlər və ya problemlər yaradıb-yaratmadığını və ya faktiki dəyişikliyin nəzərdə tutulmuş məqsədə xidmət edib-etmədiyini aşkar etmək üçün seçilmiş sahələrdə yenidən sınaqdan keçirilir.
Reqressiya testi böyük proqram təminatı tətbiqləri üçün vacibdir, çünki problemin bir hissəsinin dəyişdirilməsinin tətbiqin fərqli hissəsi üçün yeni problem yaradıb-yaratmadığını bilmək çox vaxt çətindir. Məsələn, bank müraciəti kredit formasına edilən dəyişiklik aylıq əməliyyat hesabatının uğursuzluğu ilə nəticələnə bilər. Əksər hallarda problemlər bir-biri ilə əlaqəsiz görünə bilər, lakin əslində proqram tərtibatçıları arasında məyusluğun səbəbi ola bilər.
Reqressiya testini tələb edən digər vəziyyətlərə müəyyən dəyişikliklərin müəyyən edilmiş məqsədə nail olub-olmadığını aşkar etmək və ya problemsiz bir müddətdən sonra yenidən üzə çıxan problemlərlə bağlı yeni təhlükələrin yoxlanılması daxildir.
Müasir reqressiya testi, ilk növbədə, mövcud proqram təminatının anlıq görüntülərini çəkən və sonra müəyyən dəyişiklik tətbiq edildikdən sonra müqayisə edilən xüsusi kommersiya test alətləri vasitəsilə idarə olunur. İnsan sınayıcılarının avtomatlaşdırılmış proqram təminatı testçiləri ilə eyni tapşırıqları səmərəli şəkildə yerinə yetirməsi demək olar ki, mümkün deyil. Bu, xüsusilə banklar, xəstəxanalar, istehsal şirkətləri və böyük pərakəndə satış şirkətləri kimi böyük İT mühitlərindəki iri və mürəkkəb proqram təminatı tətbiqləri üçün doğrudur.
Stress testi, ağır şəbəkə trafiki, prosesin yüklənməsi, sürətin aşılması, sürət həddinin aşılması və resursların pik istifadə tələbləri nəticəsində baş verə bilən ekstremal və əlverişsiz şəraitdə onun performansının qənaətbəxş olub-olmadığını müəyyən etmək üçün proqram və ya aparat vasitələrinin sınaqdan keçirilməsinə aiddir.
Əksər sistemlər normal iş şəraiti nəzərə alınmaqla hazırlanmışdır. Buna görə də, həddi aşsa belə, sistem inkişaf zamanı stress testindən keçirsə, səhvlər əhəmiyyətsizdir.
Stress testi aşağıdakı kontekstlərdə istifadə olunur:
Avtomatlaşdırılmış test (proqram testinin avtomatlaşdırılması) testləri avtomatik həyata keçirən və sonra faktiki test nəticələrini gözlənilən nəticələrlə müqayisə edən xüsusi proqram vasitələrindən istifadə edən kod testinə yanaşmadır.
Avtomatlaşdırılmış test Davamlı Çatdırılma (CD), Davamlı İnteqrasiya (CI), DevOps və DevSecOps-da mühüm rol oynayır. Avtomatlaşdırılmış testin əsas üstünlüklərinə aşağıdakılar daxildir:
Proqram təminatının işlənib hazırlanmasında, proqramın qurma xətalarından azad olmasını və nəzərdə tutulan funksiyanı yerinə yetirməsini təmin etmək üçün qurma prosesi zamanı avtomatlaşdırılmış testlərin aparılması xüsusilə faydalıdır.
Proqram təminatının sınaqdan keçirilməsini avtomatlaşdırmaq üçün vaxt ayırmaq, kod dəyişikliyinin mövcud funksionallığı pozması riskini azaltmaqla, nəticədə tərtibatçıların vaxtına qənaət edəcək.
Test inkişaf prosesində çox vacib bir mərhələdir. Bütün səhvlərin düzəldilməsini və məhsulun, proqram təminatının və ya aparatın nəzərdə tutulduğu kimi və ya hədəf performansına mümkün qədər yaxın işləməsini təmin edir. İstifadəçi ehtiyaclarını vaxtında və minimum qüsurlarla təmin edən səmərəli proqram təminatını ardıcıl şəkildə təqdim etmək üçün əllə sınaqdan çox avtomatlaşdırılmış sınaq vacibdir.
Manual test hələ də inkişaf zamanı müxtəlif vaxtlarda aparılır, lakin bu, əsasən tərtibatçılar və ya aparat mühəndisləri tərəfindən etdikləri dəyişikliklərin istənilən effekti verib-vermədiyini tez bir zamanda görmək üçün edilir.
Ercole Palmeri
Coveware by Veeam kiber qəsb hallarına cavab xidmətləri göstərməyə davam edəcək. Coveware məhkəmə və remediasiya imkanları təklif edəcək...
Proqnozlaşdırılan texniki xidmət zavodun idarə edilməsinə innovativ və proaktiv yanaşma ilə neft və qaz sektorunda inqilab edir.…
Böyük Britaniyanın CMA süni intellekt bazarında Big Tech-in davranışı ilə bağlı xəbərdarlıq edib. Orada…
Avropa İttifaqı tərəfindən binaların enerji səmərəliliyini artırmaq üçün tərtib edilən "Yaşıl Evlər" Fərmanı qanunvericilik prosesini yekunlaşdırdı ...