Sparround

Testing-in əsasları və 7 prinsip

Software testing — proqram məhsulunun keyfiyyətini qiymətləndirmək və defektləri aşkar etmək prosesidir. Testing yalnız bug tapmaq deyil: o, məhsul haqqında məlumat verir, riskləri azaldır və qərar qəbuluna kömək edir.

QA (Quality Assurance), QC (Quality Control) və Testing fərqli anlayışlardır:

  • QA — proseslərə fokuslanır, defektlərin qarşısını alır
  • QC — məhsula fokuslanır, keyfiyyəti yoxlayır
  • Testing — QC-nin bir hissəsidir, defektləri aşkar edir
PrinsipMənası
1. Testing defektlərin varlığını göstərirTest defekt tapa bilər, amma defektin olmadığını sübut edə bilməz
2. Exhaustive testing mümkün deyilBütün kombinasiyaları yoxlamaq olmur — risk əsaslı seçim lazımdır
3. Early testingNə qədər tez başlanılsa, defektin düzəldilməsi o qədər ucuz olur
4. Defect clusteringDefektlərin çoxu az sayda modulda toplanır (Pareto)
5. Pesticide paradoxEyni testlər təkrarlansa, yeni bug tapmır — testlər yenilənməlidir
6. Testing kontekstdən asılıdırBank sistemi ilə mobil oyun eyni cür test olunmur
7. Absence-of-errors fallacyBug-sız sistem user ehtiyacına cavab vermirsə, yenə uğursuzdur

Interview-də 7 prinsipi əzbər sadalamaqdan çox, real nümunə ilə izah etmək təsir bağışlayır. Məsələn: "Layihəmizdə regression testlər köhnəlmişdi, yeni bug tapmırdı — pesticide paradox-un real halı."

📚 Mənbələr və sənədlər

  • ISTQB Glossaryrəsmiglossary.istqb.org

    Terminlərin rəsmi tərifləri — interviewda tərif mübahisəsində istinad nöqtəsi.