Static testing və requirement review
Static testing — kodu icra etmədən aparılan yoxlamadır: requirement-lərin, user story-lərin, dizaynın, test case-lərin və kodun oxunaraq təhlili. Dynamic testing isə sistemi işə salıb davranışına baxmaqdır.
Manual QA üçün bu mövzu ona görə vacibdir ki, o, sualın cavabıdır: "kod hazır olmayanda QA nə edir?" Cavab — ən dəyərli işi: defekti hələ kodda yaranmamışdan əvvəl tapır.
Requirement-dəki bir sətirlik qeyri-müəyyənliyi refinement-də düzəltmək bir neçə dəqiqəlik işdir; eyni səhv production-a çatanda saatlarla analiz, hotfix, retest və bəzən müştəri kompensasiyası deməkdir. "Early testing" prinsipinin praktiki mənası budur.
| Review növü | Formallıq | Necə keçir | Nəticə |
|---|---|---|---|
| Informal review | Ən aşağı | Həmkarla "bir bax bura" — sənədsiz, sürətli | Şifahi qeydlər, kiçik düzəlişlər |
| Walkthrough | Aşağı-orta | Müəllif sənədi addım-addım komandaya danışır, suallar verilir | Anlaşma vahidliyi, açıq sualların siyahısı |
| Technical review | Orta | Texniki ekspertlər həll yolunu qiymətləndirir | Texniki qərar və alternativlər |
| Inspection | Ən yüksək | Rollar (moderator, müəllif, reviewer, katib), checklist, metriklər | Rəsmi defekt siyahısı, entry/exit meyarları |
Requirement nə vaxt test edilə bilən (testable) sayılır? Yoxlama meyarları:
- Birmənalı — bir cümləni iki cür başa düşmək olmur
- Ölçülə bilən — "tez", "rahat", "kifayət qədər" kimi sözlər əvəzinə rəqəm var
- Tam — uğurlu hal da, xəta halı da təsvir olunub
- Ziddiyyətsiz — başqa requirement-lə toqquşmur
- İzlənə bilən — hansı biznes ehtiyacından gəldiyi məlumdur
- Realdır — mövcud vaxt və texnologiya ilə həyata keçirilə bilər
Qırmızı bayraq sözlər (bunları görəndə dərhal sual ver): və s., adətən, mümkün qədər, istifadəçi dostu, tez, optimal, lazım gəldikdə, düzgün işləməlidir.
Interview-də "kod hazır deyil, sən nə edirsən?" sualına "gözləyirəm" cavabı dərhal minus yazır. Güclü cavab siyahıdır: requirement-ləri review edirəm və sual siyahısı hazırlayıram, acceptance criteria-nın yoxlanıla bilən olduğunu yoxlayıram, test case/checklist yazıram, test datası və mühiti hazırlayıram, köhnə regression case-lərini yeniləyirəm. Əgər bir dəfə review-da real defekt tapmısansa — onu nümunə kimi danış, bu cavabı iki dəfə güclü edir.