الدرس 5 من 6

مفردات أتمتة الاختبار واختبار CI/CD

مفردات أتمتة الاختبار واختبار CI/CD

8 دقيقة للقراءة

هندسة ضمان الجودة الحديثة تتطلب إتقان مصطلحات الأتمتة وCI/CD. سواء كنت تكتب اختبارات آلية أو تُعد مسارات أو تناقش استراتيجية الأتمتة.

مفردات أطر الأتمتة

المصطلح المعنى
Page Object Model (نموذج كائن الصفحة) نمط تصميم: كل صفحة كائن بعناصرها وإجراءاتها
Test fixture (ثابت الاختبار) كود إعداد وتنظيف يحضر بيئة الاختبار
Assertion (التأكيد) فحص يتحقق من السلوك المتوقع
Mocking (المحاكاة) استبدال تبعيات حقيقية بتنفيذات مزيفة
Stubbing (التبديل) تقديم ردود محددة مسبقاً بدل استدعاء خدمات حقيقية
Test double (بديل اختبار) مصطلح عام للمحاكاة والبدائل والمزيفات
Headless mode (بدون واجهة) تشغيل اختبارات المتصفح بدون نافذة مرئية

بدائل الاختبار — متى تستخدم كلاً منها

النوع الاستخدام
Mock (محاكاة) تحتاج التحقق من أن دالة استُدعيت بمعاملات محددة
Stub (بديل) تحتاج التحكم فيما تُرجعه دالة
Spy (جاسوس) تريد مراقبة الاستدعاءات بدون تغيير السلوك
Fake (مزيف) تحتاج بديلاً مبسطاً لكن يعمل

مصطلحات CI/CD

المصطلح المعنى
Pipeline (خط الأنابيب) تسلسل آلي من المراحل
Stage (المرحلة) خطوة متميزة في المسار
Quality gate (بوابة الجودة) نقطة فحص آلية تمنع إذا فشلت المعايير
Artifact (القطعة) مخرجات البناء (تقرير اختبار، صورة docker)
Trigger (المحفز) ما يبدأ المسار (push، merge، جدول)
Parallel execution (التنفيذ المتوازي) تشغيل مهام متعددة بالتوازي
"The pipeline is red — the integration tests failed."
المسار أحمر — فشلت اختبارات التكامل

"We should add a quality gate that blocks if coverage drops below 75%."
يجب إضافة بوابة جودة تمنع إذا انخفضت التغطية عن 75%

مصطلحات موثوقية الاختبار

المصطلح المعنى
Flaky test (اختبار غير مستقر) ينجح ويفشل عشوائياً
Deterministic (حتمي) ينتج نفس النتيجة دائماً
Test isolation (عزل الاختبار) كل اختبار مستقل
Quarantine (الحجر) عزل الاختبارات غير المستقرة
Test debt (دين الاختبار) مشاكل جودة اختبار متراكمة

ما يجب أتمتته وما لا يجب

أتمتة لا تؤتمت
اختبارات الانحدار المتكررة الاختبار الاستكشافي
اختبارات الدخان ميزات تتغير باستمرار
اختبارات API اختبارات تتطلب حكم بشري
اختبارات الأداء اختبارات لمرة واحدة

اختبار التحول لليسار (Shift-Left)

نقل أنشطة الاختبار لمراحل أبكر في دورة التطوير. بدلاً من الانتظار حتى النهاية، يراجع QA المتطلبات والتصميم مبكراً.

"We need to shift left — too many bugs are found late."
نحتاج التحول لليسار — كثير من الأخطاء تُكتشف متأخراً

"If QA reviews requirements upfront, we prevent issues."
إذا راجع QA المتطلبات مبكراً، نمنع المشاكل

مفردات BDD

المصطلح المعنى
Gherkin (غيركن) لغة إنجليزية بسيطة لكتابة سيناريوهات BDD
Feature file (ملف الميزة) ملف يحتوي سيناريوهات Gherkin
Given (بافتراض) الشرط المسبق — الحالة الابتدائية
When (عندما) الإجراء — ما يفعله المستخدم
Then (إذن) النتيجة المتوقعة — ما يجب أن يحدث
Step definition (تعريف الخطوة) الكود الذي ينفذ كل خطوة Gherkin
Scenario: Successful login
  Given I am on the login page          (بافتراض أنني في صفحة تسجيل الدخول)
  When I enter valid credentials        (عندما أدخل بيانات صالحة)
  Then I should see the dashboard       (إذن يجب أن أرى لوحة التحكم)

التالي: كتابة تقارير الأخطاء وخطط الاختبار وتوثيق QA

:::

اختبار

اختبار أتمتة الاختبار وCI/CD

خذ الاختبار