كيف نختبر أدوات خلصنا
تقرير موثق ودقيق عن منظومة الاختبارات الآلية وفحص المعادلات البرمجية في المنصة.
آخر تحديث: أكتوبر 2026
بناء الثقة يتطلب الصدق التام فيما يتم اختباره بالفعل وما لم يتم اختباره.
توثق هذه الصفحة فقط الحقائق البرمجية الموجودة في مستودع الكود الخاص بالمنصة: منظومة الاختبارات الآلية، وفئات الأدوات المشمولة باختبارات الوحدة، والبيئات البرمجية المستخدمة في الفحص.
11. حزمة الاختبارات الآلية (npm test)
تتضمن منصة 'خلصنا' حزمة اختبارات برمجية مؤتمتة مبنية على محرك الاختبارات الأصلي في Node.js (node:test و node:assert). يمكن تشغيل هذه الاختبارات مباشرة عبر الأمر 'npm test' في مستودع المشروع.
تُنفذ الاختبارات في أجزاء من الثانية خلال دورات التطوير للتحقق من عدم حدوث أي تراجع في دقة الحسابات.
22. فئات الأدوات المشمولة باختبارات الوحدة (Unit Tests)
تغطي اختبارات الوحدة الآلية (في ملف tests/math-tools.test.js) المعادلات الحسابية الدقيقة:
• حاسبة القروض: اختبار معادلة إطفاء القرض للأقساط الشهرية، وإجمالي المدفوعات، وحالات الفائدة الصفرية. • حاسبة النسب المئوية: اختبار الحالات الثلاث (حساب النسبة من رقم، ونسبة رقم من آخر، ومعدل التغير المئوي). • حاسبة كتلة الجسم (BMI): فحص المعادلات المترية والإنجليزية وفق معايير منظمة الصحة العالمية وتصنيفاتها. • حاسبة العمر والتواريخ: فحص الفروق التقويمية الدقيقة وحساب السنوات والشهور والأيام بدقة. • الحسابات المالية وتحويل العملات: اختبار دقة الضرب والتقريب المالي. • ترميز وفك تشفير Base64: فحص دعم نصوص UTF-8 والنصوص العربية المعقدة.
33. اختبارات الفحص السريع لواجهات الأدوات (Smoke Tests)
تتحقق اختبارات الفحص السريع (في tests/smoke.test.js) من جاهزية أدوات الفئة الأولى (Tier A):
• سلامة المكونات البرمجية: التحقق من تصدير مكونات React صالحة وخالية من أخطاء التحميل. • المحتوى ثنائي اللغة: التحقق من وجود كافة الترجمات الإنجليزية والعربية. • الجاهزية على الخادم: التحقق من أن صفحات الإنتاج تحتوي على الواجهات التفاعلية الكاملة (حقول، أزرار، مناطق سحب) في كود HTML الأولي دون الاكتفاء بمؤشرات التحميل الفارغة.
44. بيئات التشغيل والمتصفحات التي تم اختبارها بالفعل
التزاماً بالأمانة المهنية، إليك البيئات والأنظمة التي تم إجراء الاختبارات الفعلية عليها:
• بيئة التشغيل: محرك Node.js 20+ و Node.js 24 على أنظمة 64-بت. • المتصفحات: متصفح Google Chrome ومحرك Chromium لسطح المكتب أثناء البناء وتوليد صفحات Next.js.
لا ندعي إجراء اختبارات على أجهزة أو متصفحات لم يتم تشغيلها واختبارها فعلياً في خطوط الفحص الخاصة بنا.
55. اختبارات الأداء واستقرار الذاكرة للملفات الكبيرة
تخضع أدوات معالجة الملفات في المتصفح لاختبارات استهلاك الذاكرة العشوائية (RAM) لضمان عدم انهيار تبويب المتصفح عند معالجة ملفات PDF أو صور بدقة عالية. نعتمد تقنيات تحرير الذاكرة الفوري (Garbage Collection optimization) وإلغاء كائنات URL المؤقتة (URL.revokeObjectURL) فور إتمام التنزيل لحماية استقرار جهاز المستخدم.