خدمات اختبارات الأداء والأمان
تقيس خدمة اختبارات الأداء والأمان من متقن سوفت كيف يتصرف تطبيق الويب أو واجهة API لديكم تحت الحمل الحقيقي وأمام محاولات الاستغلال الشائعة — بأرقام، قبل أن يقيسها آلاف المستخدمين في يوم الإطلاق. ننفّذ اختبارات الحمل والضغط والتحمّل بأداة JMeter، ونتتبّع نقاط الاختناق (bottlenecks) في الخدمات وقواعد البيانات التي تقف خلف الطلبات البطيئة، ونفحص ثغرات OWASP الشائعة في تطبيقات الويب وواجهات API، ونراجع المصادقة والتفويض ومعالجة المدخلات.
ما تستلمونه: مقاييس زمن الاستجابة والإنتاجية ومعدل الأخطاء، ونتائج مرتّبة بالخطورة لكل منها خطوات إعادة الإنتاج، وتوصيات إصلاح، وإعادة قياس بعدها. متقن سوفت شركة اختبار برمجيات مقرها الرياض، والمهندس الذي يختبر منتجكم هو من يكتب النتائج ويتحقق من الإصلاحات.
- اختبارات حمل وضغط وتحمّل بأداة JMeter، تُعرض نتائجها مقاييسَ لزمن الاستجابة والإنتاجية ومعدل الأخطاء.
- فحص ثغرات OWASP الشائعة في الويب وواجهات API، مع مراجعة المصادقة والتفويض ومعالجة المدخلات.
- نتائج مرتّبة بالخطورة، لكل منها خطوات إعادة الإنتاج والأدلة وتوصية الإصلاح.
- إعادة قياس بعد الإصلاح، وقرار إطلاق مكتوب: ما اختُبر وما بقي مفتوحاً.
- مقرنا الرياض: نعمل حضورياً في المملكة أو عن بُعد، والتقارير بالعربية أو الإنجليزية.
اختبار الأداء: الحمل والضغط والتحمّل
لا تفيد خدمة اختبار الأداء إلا إذا أجاب كل تشغيل عن سؤال سيبني عليه أحدٌ قراراً. اختبار الحمل (Load testing) واختبار الضغط (Stress testing) واختبار التحمّل (Soak testing) تجيب عن أسئلة مختلفة، لذلك تحدد استراتيجية الاختبار أيها يحتاجه إصداركم وما الذي يجب أن يُثبته كل منها. تُشغَّل الثلاثة بأداة Apache JMeter، ويُؤخذ نموذج عبء العمل (workload model) عادةً من تحليلاتكم أو من توقعات العمل: أي نقاط النهاية، وبأي مزيج، وبأي بيانات، وبأي تزامن.
ملاحظة على المصطلح: يُستخدم «اختبار التحمل» و«فحص الأداء التحملي» أحياناً بمعنى اختبار الأداء تحت الحمل عموماً. نقصد به في هذه الصفحة، كما في صفحتنا الرئيسية، المعنى الأدق: حمل واقعي ثابت لساعات، بينما يرفع اختبار الضغط (ويُسمّى أيضاً اختبار الإجهاد) الحمل حتى حدود النظام.
حين يتجاوز رقمٌ هدفه، فالرقم ليس هو النتيجة بعد. يتتبّع تحليل نقاط الاختناق الطلبات البطيئة إلى الخدمات وقواعد البيانات التي خلفها — هل يرتفع زمن الاستجابة بينما تثبت الإنتاجية (مورد مُشبَع كالمعالج أو مجمّع الاتصالات)، وهل تظهر الأخطاء قبل البطء (حدّ صارم)، وأي الاستعلامات يبطؤ مع التزامن — حتى تسمّي النتيجة سبباً لا عَرَضاً فقط.
- اختبار الحمل — هل يحقق المنتج أهدافه عند الحركة التي تتوقعونها؟ عبء العمل المتوقع في المستوى الاعتيادي وفي الذروة، مقارَناً بالأهداف التي حددتموها.
- اختبار الضغط — أين الحد، وكيف يفشل النظام؟ يُرفع الحمل فوق الذروة المتوقعة حتى تظهر الأخطاء أو انتهاءات المهلة، لنرى هل يتراجع بأخطاء واضحة ويتعافى وحده، أم ينهار ويحتاج إلى إعادة تشغيل.
- اختبار التحمّل — هل يبقى النظام سليماً لساعات؟ حمل واقعي ثابت لعدة ساعات يكشف تسرّب الذاكرة، واستنفاد مجمّع الاتصالات، والجداول أو الطوابير التي تكبر حتى يبطؤ كل شيء.
- المقاييس — زمن الاستجابة والإنتاجية (throughput) ومعدل الأخطاء. ويُقرأ زمن الاستجابة عادةً بالمئينات (percentiles): p50 وp95 وp99 لا المتوسط الذي يخفي الذيل البطيء، لكل نقطة نهاية على حدة، حتى لا تُخفي صفحةٌ رئيسية سريعة عمليةَ دفع بطيئة.
معايير النجاح والإخفاق: اتفقوا على العتبات قبل التشغيل
الاختبار بلا عتبات متفق عليها يقيس، لكنه لا يُنتج نجاحاً ولا إخفاقاً. ينبغي الاتفاق على المعايير (pass/fail criteria) قبل أول تشغيل، أرقاماً مربوطة بعبء عمل ونافذة زمنية — اطلبوها ممن يُجري لكم اختبارات الحمل أياً كان. الجدول مثال توضيحي لعملية الدفع في متجر خيالي هو «متجر بستان» — قيمكم تأتي من حركتكم ورحلات مستخدميكم والتزاماتكم أنتم، لا من هذه الصفحة.
طريقة قياس زمن الاستجابة لا تقل أهمية عن الحد نفسه. لكل طلب تسجّل JMeter الزمن المنقضي (elapsed time) من قُبيل إرسال الطلب مباشرة إلى ما بعد وصول آخر جزء من الاستجابة، ولا يشمل ذلك عرض الصفحة في المتصفح ولا تنفيذ JavaScript. ثم تُلخَّص هذه الأزمنة في مئينات — تعرض لوحة تقارير JMeter بصيغة HTML المئينات 90 و95 و99 افتراضياً — إلى جانب الإنتاجية ومعدل الأخطاء. والمعايير المفيدة تحدد كذلك أي نافذة تُحتسب (عادةً الحالة المستقرة بعد مرحلة التصاعد)، وما الذي يُعدّ خطأً (استجابات 5xx، وانتهاء المهلة، واستجابات 200 تحمل رسالة خطأ يكشفها تحقق assertion)، ومتى يكون التشغيل غير صالح لا ناجحاً: إذا تشبّع مولّد الحمل نفسه، أو تغيّر البناء أثناء التشغيل، أو لم تكن البيئة هي المتفق عليها.
| المعيار (مثال) | نطاق القياس | نجاح | إخفاق |
|---|---|---|---|
| زمن الاستجابة عند p95 | POST /api/checkout، حالة مستقرة 30 دقيقة عند 120 طلباً في الثانية | 800 مللي ثانية أو أقل | أكثر من 800 مللي ثانية |
| زمن الاستجابة عند p99 | النافذة نفسها | 1500 مللي ثانية أو أقل | أكثر من 1500 مللي ثانية |
| معدل الأخطاء | كل طلبات المزيج: 5xx وانتهاء المهلة والتحققات الفاشلة | أقل من 0.5% | 0.5% أو أكثر |
| الإنتاجية | مزيج عبء العمل كاملاً | 120 طلباً في الثانية بثبات لمدة 30 دقيقة | تعذّر الحفاظ على المعدل لأن الاستجابات تبطؤ |
| ثبات التحمّل | تشغيل 4 ساعات عند 60% من الذروة | قيمة p95 في الساعة الأخيرة ضمن 10% من الساعة الأولى | انحراف يتجاوز 10%، أو ذاكرة أو اتصالات مفتوحة تواصل الصعود |
| سلوك الضغط | تصاعد فوق الذروة حتى تظهر الأخطاء | استجابات 503 أو 429 واضحة، وعودة الخدمة الطبيعية خلال 5 دقائق من انخفاض الحمل | انهيار، أو طلبات معلّقة، أو بيانات خاطئة، أو عدم تعافٍ دون إعادة تشغيل |
اختبار الأمان: ثغرات OWASP الشائعة في الويب وواجهات API
يفحص الجزء الأمني تطبيق الويب وواجهات API لديكم بحثاً عن نقاط الضعف الشائعة المصنّفة في قائمتين من OWASP: قائمة OWASP Top 10:2025 لتطبيقات الويب، وقائمة OWASP API Security Top 10 (إصدار 2023) لواجهات API. تُجرى الفحوص على البيئة المتفق عليها، وتحتاج فحوص التحكم في الوصول إلى حسابات اختبار لكل دور. والقائمتان مرجعان لا قوائم للتأشير: يصف دليل OWASP لاختبار أمان الويب (WSTG) كيف تُختبر كل نقطة ضعف، ويضع معيار التحقق من أمان التطبيقات (ASVS) متطلبات قابلة للاختبار — وكلاهما مفيد لفريقكم حين يكتب الإصلاح واختبار الانحدار الخاص به.
تُراجَع المصادقة (authentication) والتفويض (authorization) ومعالجة المدخلات ضمن هذه الخدمة. فيها تتقاطع القائمتان، وفيها تكون الماسحات الآلية أضعف ما تكون: لا يعرف الماسح أن العميل «أ» يجب ألا يقرأ طلب العميل «ب». وبعض الفئات — مثل إخفاقات سلسلة توريد البرمجيات (A03:2025) والتصميم غير الآمن (A06:2025) — لا يظهر منها من الخارج إلا جزء، ولا يكفي الاختبار وحده لاستبعادها.
| المجال | مرجع OWASP | أمثلة على الفحوص |
|---|---|---|
| التحكم في الوصول | A01:2025 Broken Access Control؛ API1:2023 Broken Object Level Authorization؛ API5:2023 Broken Function Level Authorization | استخدام رمز العميل «أ» لقراءة طلب العميل «ب» بتغيير المعرّف؛ رمز عميل يستدعي نقطة نهاية إدارية؛ حقل مثل role أو price يقبله الخادم من العميل (API3:2023) |
| المصادقة والجلسات | A07:2025 Authentication Failures؛ API2:2023 Broken Authentication | تقييد محاولات الدخول والقفل، ورسائل خطأ عامة، وانتهاء صلاحية الرمز، وتسجيل خروج وتغيير كلمة مرور يُبطلان الجلسة فعلاً، ومسار استعادة كلمة المرور |
| معالجة المدخلات | A05:2025 Injection | قيم عدائية في البحث والمرشّحات وحقول الترتيب وأسماء الملفات والترويسات؛ أخطاء قاعدة البيانات أو سكربت منعكس في الاستجابات |
| الإعداد | A02:2025 Security Misconfiguration؛ API8:2023 Security Misconfiguration | ترويسات الأمان، وإصدارات TLS، وخصائص ملفات تعريف الارتباط (Secure وHttpOnly وSameSite)، وسياسة CORS، والأخطاء المفصّلة والصفحات الافتراضية |
| الحالات الاستثنائية | A10:2025 Mishandling of Exceptional Conditions | طلبات مشوّهة وحقول ناقصة وانتهاء مهلة: لا تتبّعات مكدّس (stack traces) في الاستجابة، ولا فشل مفتوح (failing open) |
| استهلاك الموارد | API4:2023 Unrestricted Resource Consumption | حدود حجم الصفحة والحمولة، وتحديد المعدل باستجابات 429 — تُقاس جنباً إلى جنب مع اختبارات الحمل |
حدود النطاق: ما لا تدّعيه هذه الخدمة
هذه الخدمة اختبار لنقاط الضعف الشائعة وقياس للأداء، مع الدليل الذي يسند كل نتيجة. ومن المفيد أن نكون دقيقين فيما ليست عليه، لتخططوا لأي شيء آخر تحتاجونه.
- ليست اختبار اختراق معتمداً (certified penetration test) ولا شهادة امتثال. التقرير دليل اختبار، ولا يشهد بالامتثال لنظام أو معيار. وإن طلب مدقق أو جهة تنظيمية أو عقد عميل أياً منهما فخططوا له بشكل منفصل؛ وتبقى النتائج ونتائج إعادة الاختبار من هذا العمل مدخلاً مفيداً.
- تطبيقات الجوال: واجهات API التي يستدعيها تطبيق الجوال ضمن النطاق، وتخضع للفحوص نفسها التي تخضع لها أي واجهة أخرى. أما حزمة التطبيق نفسها — البيانات المخزّنة على الجهاز، والتفاعل مع المنصة، ومقاومة الهندسة العكسية والعبث، وهي المجالات التي يعرّفها معيار OWASP MASVS — فليست جزءاً من هذه الخدمة كما توصف هنا.
- ليست تمريناً على هجمات حجب الخدمة. اختبار الضغط يجد حد السعة لنظامكم تحت حمل مضبوط من مولّد حمل، وليس محاكاة لهجوم موزّع.
- الخدمات الخارجية — بوابات الدفع ومزوّدو الرسائل النصية والتكاملات الوطنية — لا ينبغي أن تتلقى حمل اختبار دون إذن مالكها. وأياً كانت الجهة التي تختبر لكم، تأكدوا أن النطاق يحدد هل تُستبدل كل واحدة منها ببديل محاكٍ (stub) أم تُستدعى عبر بيئتها التجريبية (sandbox).
- الإنتاج: يُجرى الاختبار على بيئة اختبار أو بيئة مرحلية (staging). وتشغيل أي شيء على الإنتاج قراركم أنتم؛ وإن اتخذتموه فاتفقوا صراحةً ومسبقاً على الأهداف والمعدل والنافذة الزمنية وشروط الإيقاف (انظروا الأسئلة الشائعة).
كيف يسير العمل
يتبع العمل المراحل الست نفسها التي يتبعها كل مشروع لدى متقن سوفت، مكيّفةً للأداء والأمان. والمرحلة لا تُغلق إلا بمُخرجها.
المهندس الذي ينفّذ الاختبارات هو من يكتب النتائج ويتحقق من الإصلاحات، فلا يضيع شيء بين من وجد المشكلة ومن يؤكد زوالها.
| المرحلة | ما يحدث | المُخرج |
|---|---|---|
| الاستكشاف | قراءة المتطلبات والمعمارية وتاريخ الأخطاء؛ وتحديد ما يكلّف أكثر إذا تعطّل — الرحلات والبيانات وذروات الحركة | خريطة مخاطر |
| النمذجة | تصميم التغطية — عادةً نموذج عبء العمل (مزيج نقاط النهاية، والبيانات، والتزامن، والتصاعد، والمدة) ومجالات الأمان التي ستُختبر، بحسب الدور ونقطة النهاية | استراتيجية اختبار |
| التنفيذ | تشغيلات الحمل والضغط والتحمّل بأداة JMeter وفحوص الأمان المبنية على OWASP على البيئة المتفق عليها، مع تسجيل كل تشغيل ونتيجته | سجلات تنفيذ ومقاييس |
| التقرير | نتائج بخطورتها وخطوات إعادة إنتاجها وأدلتها في أداة التتبع لديكم؛ والنتيجة الحرجة يُبلَّغ عنها فوراً | نتائج مرتّبة بالخطورة |
| إعادة الاختبار | إعادة اختبار كل إصلاح وإعادة القياس، وتشغيل الانحدار | إعادة القياس ونتائج الانحدار |
| قرار الإطلاق | ما اختُبر، وما بقي مفتوحاً، وما المخاطر المقبولة | قرار إطلاق مكتوب |
ما الذي تستلمونه
تصل النتائج إلى أداة التتبع التي يستخدمها فريقكم، وتوثيق الاختبارات والتقارير بالعربية أو الإنجليزية بحسب لغة فريقكم. ويعرض الجدول شكل نتيجة أداء، على عملية الدفع الخيالية نفسها.
- مقاييس زمن الاستجابة والإنتاجية ومعدل الأخطاء — عادةً بالمئينات لكل نقطة نهاية ولكل تشغيل. وأياً كانت الجهة التي تقيس لكم، اطلبوا كل رقم مع عبء العمل والبيئة اللذين قيس فيهما؛ فبدونهما لا يمكن مقارنته في المرة القادمة.
- نتائج مرتّبة بالخطورة، لكل منها خطوات إعادة الإنتاج والبيئة والأدلة (الطلب والاستجابة والأزمنة أو تسجيل). والنتيجة الحرجة يُبلَّغ عنها فوراً، ولا تُؤجَّل إلى التقرير النهائي.
- توصيات الإصلاح: ما الذي يُغيَّر وأين — فهرس، أو حجم مجمّع اتصالات، أو فحص ملكية مفقود، أو ترويسة.
- إعادة قياس بعد الإصلاحات (عادةً بعبء العمل نفسه، لتكون المقارنة صادقة)، وإعادة اختبار كل إصلاح.
- سجلات التنفيذ وقرار إطلاق مكتوب: ما اختُبر، وما بقي مفتوحاً، وما المخاطر المقبولة.
| الحقل | مثال (خيالي: واجهة الدفع في «متجر بستان») |
|---|---|
| العنوان | زمن الاستجابة عند p95 لعملية الدفع ثلاثة أضعاف العتبة عند حمل الذروة |
| الخطورة | عالية — تُخفق في عتبة الإطلاق لعملية الدفع |
| الموضع | POST /api/checkout، بناء الاختبار 2.14.0، عند 120 طلباً في الثانية |
| القياس | بلغ p95 مقدار 2400 مللي ثانية مقابل عتبة 800 مللي ثانية؛ ومعدل الأخطاء 0.2% |
| السبب | استعلام الطلبات بحسب العميل والتاريخ يمسح الجدول كاملاً تحت التزامن؛ ومعالج قاعدة البيانات عند 95% |
| خطوات إعادة الإنتاج | تشغيل عبء عمل الدفع (خطة JMeter وملف البيانات مرفقان) لمدة 10 دقائق عند 120 طلباً في الثانية |
| التوصية | فهرس مركّب على orders (customer_id, created_at) ثم إعادة القياس |
| إعادة القياس | في البناء 2.14.1 أصبح p95 عند 610 مللي ثانية مع 120 طلباً في الثانية — العتبة محققة |
ما الذي نحتاجه منكم
المنتج والتقنيات وموعد الإصدار تكفي لبدء الحديث. ولتنفيذ الاختبارات نحتاج إلى ما يلي:
- بيئة: بيئة اختبار أو بيئة مرحلية قريبة من الإنتاج حجماً وإعداداً قدر الإمكان؛ وحيث تختلف يُكتب الفرق في التقرير لتُقرأ الأرقام قراءة صحيحة. وبناء لا يتغير أثناء التشغيل.
- الحركة والمواعيد: ذروة المستخدمين أو الطلبات في الثانية المتوقعة، والرحلات الرئيسية، وموعد الإطلاق وأي مواسم ذروة — أو تحليلات يمكن استخراجها منها.
- بيانات اختبار بحجم كافٍ: حسابات اصطناعية (حسابان على الأقل لكل دور، لفحوص التحكم في الوصول)، وقاعدة بيانات بحجم واقعي — لا نسخاً من سجلات عملاء حقيقيين.
- وصول: عقد الواجهة (OpenAPI أو مجموعة Postman)، وحسابات الاختبار، وصلاحية قراءة للمراقبة أو السجلات أو مقاييس قاعدة البيانات أثناء التشغيل. والوصول إلى المستودع يفيد في تحليل الأسباب الجذرية لكنه ليس شرطاً.
- تفويض واضح: مع أي جهة اختبار، يستحسن أن يُكتب أي المضيفات ونقاط النهاية ضمن نطاق اختبارات الحمل والأمان ومتى يجوز تشغيلها، وأن يُتحقق هل يحتاج جدار حماية تطبيقات الويب (WAF) أو محدِّد المعدل إلى إضافة مولّدات الحمل إلى قائمة السماح.
- جهة اتصال: شخص تقني واحد يستطيع قراءة السجلات وإعادة تشغيل خدمة وإيقاف التشغيل إن حدث ما لم يكن متوقعاً.
متى تُجرى اختبارات الأداء والأمان
- قبل الإطلاق أو قبل إصدار كبير — قبل أن يقيس آلاف المستخدمين الأداء بأنفسهم في يوم الإطلاق.
- قبل مواسم الذروة: الخدمات الرقمية الحكومية قبل أحمالها العالية في المواسم، والتجارة الإلكترونية قبل مواسم التخفيضات — بعبء عمل مضبوط على الذروة المتوقعة لا على يوم عادي.
- بعد تغيير في المعمارية: قاعدة بيانات أو طبقة تخزين مؤقت جديدة، أو انتقال إلى سحابة أو منطقة أخرى، أو بوابة API أو طابور رسائل جديد — ويُفضَّل إعادة القياس بعبء العمل نفسه الذي سبق التغيير، لتكون المقارنة صادقة.
- بعد تغيير في المصادقة أو الصلاحيات: مزوّد دخول موحّد (SSO) جديد، أو نظام رموز جديد، أو أدوار أو مستأجرون جدد — مع إعادة فحوص التحكم في الوصول والجلسات.
- عند فتح واجهة API لشركاء أو لتطبيق جوال — فتصبح الواجهة في متناول عملاء لا تتحكمون فيهم.
- حين يكون الإنتاج بطيئاً أصلاً — يُعاد إنتاج البطء تحت حمل مضبوط في بيئة اختبار، ويُحدَّد عنق الزجاجة قبل الذروة التالية.
الأسئلة الشائعة
ما الأداة التي تستخدمونها لاختبار الحمل؟
Apache JMeter لاختبارات الحمل والضغط والتحمّل. ويوصي دليل JMeter نفسه بوضع سطر الأوامر (CLI) لتشغيلات الحمل، مع ترك الواجهة الرسومية لبناء السكربتات وتصحيحها. وإن كانت لدى فريقكم سكربتات حمل بأداة أخرى فأخبرونا عند تحديد النطاق: نعمل بما يستخدمه فريقكم حين يكون قائماً.
هل يمكن اختبار واجهات API دون الواجهة الأمامية؟
نعم، وهذا غالباً الترتيب الأفضل. نختبر الواجهات من العقد — وصف OpenAPI أو مجموعة Postman — بالحالات الصحيحة والخاطئة، والمصادقة، والحدود، والأداء، فتكون طبقة الخدمات مقيسة قبل أن تصل الواجهة الأمامية.
هل تختبرون على بيئة الإنتاج؟
يُجرى الاختبار على بيئة اختبار أو بيئة مرحلية. واختبار الضغط بالذات يدفع النظام نحو نقطة الانكسار، وهذا لا يُفعل بالمستخدمين الحقيقيين. وتشغيل أي شيء على الإنتاج — ولو فحص زمن استجابة بمعدل منخفض — قراركم أنتم؛ وإن اتخذتموه فاتفقوا صراحةً ومسبقاً على الأهداف والمعدل والنافذة الزمنية وشروط الإيقاف.
هل هذا اختبار اختراق، وهل نحصل على شهادة؟
هو فحص لثغرات OWASP الشائعة في تطبيقات الويب وواجهات API، مع توثيق النتائج وإعادة الاختبار. ولا يُقدَّم على أنه اختبار اختراق معتمد، والتقرير ليس شهادة امتثال. وإن طلب أياً منهما مدقق أو جهة تنظيمية أو عقد عميل فخططوا له بشكل منفصل؛ وتبقى أدلة النتائج وإعادة الاختبار من هذا العمل مدخلاً مفيداً.
هل تختبرون أمان تطبيقات الجوال؟
نختبر واجهات API التي يستدعيها التطبيق — الخادم الذي يتعامل معه أي مهاجم أياً كان العميل — بالفحوص نفسها: التفويض على مستوى الكائن، والمصادقة، والتحقق من المدخلات، وحدود الموارد. أما تحليل حزمة التطبيق نفسها (التخزين على الجهاز، ومقاومة الهندسة العكسية، ومجالات OWASP MASVS) فليس جزءاً من هذه الخدمة كما توصف هنا.
هل تقدمون خدمات تقييم تطبيقات الويب في السعودية؟
نعم. مقرنا الرياض، ونعمل حضورياً في المملكة وعن بُعد مع عملاء في دول الخليج والمنطقة، والتقارير بالعربية أو الإنجليزية. ولتطبيق الويب يغطي التقييم الموصوف هنا الأداء تحت الحمل وثغرات OWASP الشائعة؛ وإن احتجتم تقييماً مستقلاً أوسع لمستوى الجودة والجاهزية قبل إطلاق كبير، فتلك خدمة الاستشارات المؤسسية لدينا.
هل تحتاجون إلى الكود المصدري؟
لا. اختبار الأداء واختبار واجهات API يُنفَّذان على بيئة اختبار أو بيئة مرحلية دون الكود. والوصول إلى المستودع يفيد في تحليل السبب الجذري لعنق الزجاجة، لكنه ليس شرطاً للبدء.
المراجع
- Apache JMeter User's Manualكيف تُبنى اختبارات الحمل وتُعامَل بالمعاملات وتُشغَّل في JMeter، وكيف تُقرأ مستمعاته وتقاريره.
- OWASP Top 10:2025أخطر عشرة مخاطر أمنية لتطبيقات الويب، مع كيفية اختبار كل منها والوقاية منه.
- OWASP API Security Top 10 (2023)أكثر عشر نقاط ضعف شيوعاً في واجهات API: خلل التفويض على مستوى الكائن، وخلل التوثيق، والاستهلاك غير المقيد للموارد، وغيرها.
- OWASP Web Security Testing Guide (WSTG)المنهجية المرجعية لاختبار تطبيقات الويب وواجهات API بحثاً عن نقاط الضعف الأمنية، اختباراً تلو الآخر.
- OWASP Application Security Verification Standard (ASVS)قائمة تحقق بمتطلبات أمنية قابلة للتحقق لتطبيقات الويب، مصنّفة في ثلاثة مستويات ضمان.
- OWASP Mobile Application Security Verification Standard (MASVS)متطلبات OWASP الأمنية لتطبيقات الجوال، مجمّعة في مجالات ضبط مثل التخزين والتشفير والمصادقة والشبكة والتفاعل مع المنصة.
تخططون لإطلاق أو لموسم ذروة؟
أخبرونا عن المنتج ومنظومته التقنية وموعد الإطلاق والحركة التي تتوقعونها في الذروة. سنعود إليكم بنطاق اختبار مقترح وتقدير للجهد — لا بعرض تسويقي.
البريد الإلكتروني: info@mutqansoft.sa · الهاتف: +966 55 704 9016
اقرأ المزيد قبل أن تقرر
اختبار مرونة الأداء والأمان
كيف تختبر المنتج أمام الحمل والاعتماديات الفاشلة والهجمات: اختبارات الحمل والإجهاد والتحمّل بأهداف حقيقية، وحقن الأعطال، وخط أساس OWASP، والأرقام التي تُسجَّل.
الأداءما هو اختبار الأداء؟
شرح اختبار الأداء: الفرق بين اختبارات الحمل والإجهاد والذروة المفاجئة والتحمّل، والمقاييس المهمة (p95 والإنتاجية ومعدل الأخطاء)، والتخطيط لأول اختبار، والأدوات.
اختبار واجهات APIما هو اختبار API؟ وكيف تختبر REST API
شرح اختبار API: ما هو، وما الذي تفحصه في كل طلب واستجابة، وطريقة خطوة بخطوة لاختبار REST API، والأخطاء الشائعة، وأدوات مجانية من متصفحك.
الأتمتةاختبار التحقق من النشر
كيف تتحقق من النشر: خطة مكتوبة مسبقاً، واختبارات دخان بعد النشر، وفحوص اصطناعية، وإصدارات كناري، وأعلام الميزات، والإشارات، والتراجع.
دروس خارطة طريق QA
أدوات مجانية من الفريق نفسه
الأدوات التي نستعملها في مشاريعنا، ومعظمها مجاني دون تسجيل.
قِس زمن استجابة نقطة نهاية عبر عدة عيّنات: الحد الأدنى والأقصى والمتوسط والوسيط وp95.
شغّل قياس أداء صغيراً وآمناً على نقطة نهاية عامة (بعدد طلبات وتزامن محدودَين) واحصل على الإنتاجية ومئينيات زمن الاستجابة.
ولّد مجموعات معاملات كبيرة (مستخدمين ورموزاً ومعرّفات وحمولات) لاختبارات التحميل في k6 وJMeter وGatling وLocust.
تقييم ترويسات أمان HTTP (CSP وHSTS وX-Frame-Options وReferrer-Policy وPermissions-Policy وCOOP/CORP) من ترويسات ملصقة أو عنوان URL عام.
اختبر إصدارات TLS التي يقبلها الخادم ومجموعة التشفير التي يتفاوض عليها والمجموعات الضعيفة وHSTS، مع تقدير من A+ إلى F يشرح سبب كل حدّ.
افحص ترويسات Set-Cookie لأي صفحة أو الصقها بنفسك، واعرف لكل ملف تعريف ارتباط ما ينقصه من Secure وHttpOnly وSameSite وما يفعله المتصفح به.