Google kimi böyük proqram şirkətləri proqramlarında aşağı prioritetli səhvlərə baxmayaraq uğur qazanırlar, lakin kiçik şirkətlər və startuplar bu lüksə sahib deyil.
Müştərilər məhsulları satış səhifəsində və ya sənədlərdə iddia etdikləri işləri gözləyir. Orada bir çox variant var ki, məhsul vaxtlarını və pullarını sərf etsələr, gəmidən atlayaraq iki dəfə düşünməyəcəklər. Buna görə, proqram təmin edilmədən əvvəl ciddi testlər keçirir:
orijinal konsepsiya və son çıxış arasında fərqləri vurğulamaq
proqramın dizaynerlərin planladığı şəkildə işlədiyini təsdiqləyin
son məhsulun etibarlılığı - məhsul müştərilərin tələblərinə cavab verməlidir
xüsusiyyətləri və keyfiyyətini qiymətləndirmək
Test, ciddi bir plandan ibarətdir. Bu qiymətli resursların istifadəsini optimallaşdırır - bacarıqlarını, vaxtını və pulunu, maraqlı tərəflərə isə məhsulu irəli aparmaq üçün lazımi məlumatlar təqdim edir. Məqsəd güclü bir keyfiyyət təminatı proqramı vasitəsilə yaxşı son istifadəçi təcrübəsini asanlaşdırmaqdır. Bu qədər yüksək paylarla, QA menecerləri texnologiyadakı ən yaxşı işləyənlərdən biridir. Tədqiqat adətən bu addımları izləyir:
Müdirlər müvafiq test strategiyasını yerinə yetirmək üçün bir plan hazırladıqları tələb analizi.
Testlər başlanır və nəticələr təhlil edilir.
Hər hansı bir qüsur düzəldilir və proqram regresiya testindən keçir. Proqram dəyişikliklərdən sonra proqramı yoxlamaq üçün bir sistemdir.
Bir test bağlanma hesabatından sonra bütün prosesi və nəticələrini ətraflı izah edir.
Proqram test metodları
Məhsulun davranışını və performansını qiymətləndirmək üçün istifadə edilən müxtəlif üsullar.
Qara qutu və ağ qutu testi iki əsas üsuldur.
- Qara qutu testi - Həm də funksional və ya spesifikasiyaya əsaslanan testdir, bu üsul çıxışa yönəlib. Test cihazları daxili mexanizmlərlə əlaqəli deyil. Onlar yalnız proqramı nə nəzərdə tutduğunu yoxlayırlar. Kodlama bilikləri lazım deyil və testlər istifadəçi interfeysi səviyyəsində işləyir.
- Ağ qutu testi - Bu üsul test prosedurunun bir hissəsi kimi kodlaşdırma nou-hau istifadə edir. Bir məhsul uğursuz olduqda, testin səbəbi tapmaq üçün lazım olduğu kimi kodu dərinliyə keçir. Məhsulun necə işləməyini təyin etdikləri üçün proqram təminatçiləri bunu özləri edirlər. Struktur əsaslı və şüşə qutu testi bu metodun digər adlarıdır.
- Statik test - Test cihazları proqramın kodunu və sənədlərini yoxlayır, lakin proqramı yerinə yetirmir. Statik testlər yoxlama prosesi zamanı məhsulun inkişafında erkən başlayır.
- Dinamik test - Proqram müxtəlif girişlərlə yerinə yetirilir və testlər gözlənilən davranışla bu üsulla çıxışları müqayisə edir.
- GUI testi - Bu GUI xüsusiyyətlərini test edir - mətn formatı, mətn qutuları, düymələr, siyahılar, layout, rənglər, şriftlər, font ölçüsü və s. GUI testi vaxt itkisidir və üçüncü tərəf şirkətlər tez-tez inkişaf etdirməyin yerinə vəzifəni yerinə yetirirlər.
Test səviyyəsi
Bu proqram inkişaf həyat dövrünün hər bir mərhələsində zəiflik və üst-üstə düşən sahələri müəyyən etmək lazımdır.
- Vahid test - Yaradıcılar kodun ən əsas hissələrini, siniflər, interfeyslər və funksiyalar / prosedurlar kimi test edir. Onlar kodu onların cavab verməlidir və çıxış bağlı olaraq düzəlişlər edə bilirlər.
- Komponent testi - Digər adlar modul və ya proqram testidir. Bu vahid testinə bənzəyir, lakin daha yüksək inteqrasiya səviyyəsini ehtiva edir. Proqramın modulları qüsurların fərdi funksiyasını yoxlamaq üçün sınaqdan keçirilir.
- İnteqrasiya testi - Bu modullar inteqrasiya olunduqda səhvləri müəyyənləşdirir. Müxtəlif inteqrasiya testləri yuxarıdan, aşağıdan və funksional artımdan ibarətdir.
- Sistem testi - Layihənin komponentləri bu üsulla müxtəlif mühitlərdə bütöv bir sınaqdan keçirilir. Qara qutu metodu altına düşür və prosesdə son testlərdən biridir. Sistem, biznes və istifadəçi ehtiyaclarını qarşılamaq üçün lazım olduğu kimi fəaliyyət göstərir.
- Alpha testi - Daxili işçi proqramı süni və ya gerçək mühitdə proqramın saytında test edir. Bundan sonra, developers səhvləri və digər məsələləri düzəldir.
- Beta testi - Həm də sahə testi kimi tanınan müştəri məhsulu öz saytında real vəziyyətdə test edir. Müştərilər bir qrup son istifadəçiyə proqramı prerelease və ya beta versiyasını test etmək imkanı təklif edə bilər. Mümkün yaxşı inkişaflar barədə fikirlər daha sonra geliştiriciyə göndərilir.
- Qəbul testi - Həmçinin qara qutu testi çərçivəsində, müştəri proqramı istənilən spesifikasiyaya proqramı yaratdıqlarını öyrənmək üçün proqramları test edir.
Test tipləri
Bu proqram testləri xüsusi məqsədlərə yönəldilir.
- Quraşdırma testi - Proqram test mühəndisi və konfiqurasiya meneceri bu testi son istifadəçi proqramı qura və yerinə yetirməyə təmin etmək üçün aparır. Quraşdırma faylları, yerləşdirmə yerləri və idarəetmə imtiyazları kimi sahələri əhatə edir.
- İnkişaf testi - Bu, qüsurları aşkar etmək və qarşısını almaq üçün bir sıra sinxronlaşdırılan strategiyaları həyata keçirir. Statik kod təhlili, peer code baxır, izlenebilirlik və ölçüm analizini ehtiva edir. Məqsəd riskləri azaltmaq və xərcləri qurtarmaqdır.
- Kullanılabilirlik testi - İstifadəçi təcrübəsi bu testlə diqqət mərkəzindədir. GUI dizaynının və onun istifadəsinin asanlığını ölçür. Test test funksiyalarının düzgünlüyünü və səmərəliliyini və emosional cavabların yoxlanmasını yoxlayır.
- Sanity testi - Bu, proqramın daha çox testin davam etdirilməsi üçün vaxt və qiymətə dəyər olduğunu göstərir. Çox qüsur və daha çox təcavüz testləri təqib olunmur.
- Duman testi - Duman testi sərbəst buraxılmaması üçün kifayət qədər ciddi olan əsas uğursuzluqları göstərir. Bu yeni bir quruluşda həyata keçirildikdə, bu quruluş yoxlama testi adlanır.
- Regresyon testi - Sistem dəyişikliklərə məruz qaldıqda, regresyon testi gözlənilməz davranışları izləyir. Modullara və ya komponentlərə mənfi təsiri göstərir.
- Dağıdıcı test - Test cihazları giriş anormal girişləri və gözlənilməz giriş idarə etmək üçün proqramın qabiliyyətini ayırır. Bu proqram inkişaf etdiricilərə proqramın səhv idarəetmədə necə güclü olduğunu göstərir.
- Recovery testi - Donanma və ya digər funksiyalar uğursuz olduqda, bu test proqramın nə qədər yaxşı qurtaracağını və işə davam etdiyini göstərir.
- Avtomatlaşdırılmış test - Bu əl ilə həyata keçirmək üçün funksiyaları yerinə yetirir. Testləri həyata keçirmək və faktiki və gözlənilən nəticələr barədə məlumat vermək üçün xüsusi proqramdan istifadə edir.
- Uyğunluq testi - Proqram müxtəlif mühitlərdə işləməlidir, buna görə fərqli sistemlərlə uyğunluq yoxlanır. Məsələn, proqram müxtəlif əməliyyat sistemləri və veb brauzerləri ilə işləyirmi?
- Performans testi - Bu, müxtəlif ssenarilərdə proqram performansını təhlil edən dərin bir testdir. Həssaslıq, sabitlik, resurs paylaması və sürət haqqında məlumat toplanır. Bundan əlavə, həcmi, tutumu və sünbül testi kimi alt testlər bu prosesdə iştirak edir.
- Təhlükəsizlik testi - Bu proqramın istifadəçilərin təhlükəsizliyini qorumaq qabiliyyətini ölçür. Bu, yetkilendirme funksiyaları, doğrulama, məxfilik, bütövlüyü, mövcudluğu və imtina edilməməsi deməkdir.
- Erişilebilirlik testi - Bu, mövcudluğu testi ilə eyni deyil. Bu, fərqlənən bacarıqların istifadəçiləri - öyrənmə və fiziki əlilliyi olan proqramı istifadə edə biləcəyi səviyyəsini müəyyənləşdirir.
- Beynəlxalqlaşma və lokalizasiya testi - Nəticələr proqramın müxtəlif dillərə və regional tələblərə uyğunlaşa biləcəyini göstərir. Bu, xüsusi yerlər üçün komponentlər əlavə etmək və mətni tərcümə etməkdən ibarətdir.
Proqram testi, bir məhsulu bazara çıxarmaq üçün vacib bir hissəsidir. Test imtahanları olmadan mövcud proqram təminatı mövcud deyil. BCS, İT-nin Təqaüdçü İnstitutu, ISTQB® (Beynəlxalq Proqram Tədqiqat Bacarığı Şurası) və ASQ (əvvəllər Amerika Cəmiyyəti Keyfiyyət Cəmiyyəti) kimi təşkilatlar vasitəsilə sertifikatlaşdırılmış proqram testi ol.