في هذا القسم، سنتعرف على ما هو اختبار التوافق، ولماذا نستخدمه، ومتى يجب علينا إجراؤه، وأنواع اختبار التوافق، وعملية اختبار التوافق، وأخطاء التوافق وأدواته.
ما هو اختبار التوافق؟
إنه جزء من الاختبار غير الوظيفي.
يُعرف التحقق من وظائف التطبيق على مختلف البرامج ومنصات الأجهزة والشبكات والمتصفحات باسم اختبار التوافق.
لماذا نستخدم اختبار التوافق؟
بمجرد استقرار التطبيق، قمنا بنقله إلى الإنتاج، ويمكن استخدامه أو الوصول إليه من قبل العديد من المستخدمين على منصات مختلفة، وقد يواجهون بعض مشكلات التوافق، ولتجنب هذه المشكلات، نقوم بإجراء جولة واحدة من اختبار التوافق.
متى يجب علينا إجراء اختبار التوافق؟
بشكل عام، نقوم باختبار التوافق فقط عندما يكون التطبيق أو البرنامج مستقرًا وظيفيًا.
ملحوظة:
ولا يتم ذلك لكل تطبيق؛ سنفعل ذلك فقط لهذا التطبيق الذي ليس لدينا سيطرة على النظام الأساسي الذي يستخدمه المستخدمون.
أنواع اختبارات التوافق
فيما يلي أنواع اختبارات التوافق:
برمجة
هنا، يعني البرنامج أنظمة تشغيل مختلفة (Linux، Window، وMac) وأيضًا التحقق من توافق البرنامج على الإصدارات المختلفة لأنظمة التشغيل مثل Win98، Window 7، Window 10، Vista، Window XP، Window 8، UNIX، Ubuntu، وماك.
ولدينا نوعان من اختبارات توافق الإصدار، وهما كما يلي:
قائمة ج #
على سبيل المثال: أحدث إصدار من المنصات (البرمجيات)
فوز 7 → فوز 8 → فوز 8.1 → فوز 10
على سبيل المثال:
نافذة XP → Vista → Win 7 → Win 8 → Win 8.1
ومتصفحات مختلفة مثل جوجل كروم، فايرفوكس، و متصفح الانترنت ، إلخ.
المعدات
يتوافق التطبيق مع أحجام مختلفة مثل ذاكرة الوصول العشوائي (RAM) والقرص الصلب والمعالج وبطاقة الرسوميات وغيرها.
متحرك
تأكد من أن التطبيق متوافق مع منصات الأجهزة المحمولة مثل iOS وAndroid وما إلى ذلك.
شبكة
التحقق من توافق البرنامج مع معلمات الشبكة المختلفة مثل سرعة التشغيل وعرض النطاق الترددي والسعة.
ما هو الجزء الأكثر تحديًا لاختبار اختبار التوافق؟
الشيء الأكثر صعوبة أثناء إجراء اختبار التوافق هو تحديد الاحتياجات الضرورية التي سيتم اختبارها.
لا يمكننا الاختبار على جميع الأنظمة الأساسية الحالية نظرًا لأنها ستستغرق وقتًا طويلاً.
ومن ثم، فإننا نختار فقط تلك المنصات التي يشيع استخدامها من قبل المستخدمين النهائيين.
عملية اختبار التوافق
نقوم هنا بإجراء عملية اختبار توافق نظام التشغيل (OS).
- أولاً، سيعطي العميل المتطلبات الوظيفية بالإضافة إلى المتطلبات غير الوظيفية.
- بعد الحصول على المتطلبات غير الوظيفية، ستقرر المنصة الأساسية الواحدة وفقًا للنظام الأساسي الأكثر استخدامًا.
- بعد ذلك، سيبدأ مهندس الاختبار في الاختبار الوظيفي على النظام الأساسي الأساسي حتى يصبح التطبيق مستقرًا وظيفيًا.
- يتعين علينا اختبار التطبيق على منصة مختلفة، لذلك، لدينا برنامج VMware لهذا الغرض.
ملاحظة 1:
برنامج VMware: بمساعدة برنامج VMware، يمكننا تقسيم جهاز فعلي واحد إلى أجهزة افتراضية متعددة، والتي يمكن الوصول إليها في وقت واحد.
- لاختبار التوافق، سنستخدم VM Server حيث نقوم بتثبيت جميع أنظمة التشغيل والمتصفحات الضرورية، ونصل إلى هذا الخادم باستخدام اتصال Remote Desktop.
- نحن نصل إلى برنامج VMware الذي تم إعداده عن بعد، وبعد ذلك، سيقوم مهندس الاختبار بإجراء جولة واحدة من اختبار التوافق على النظام الأساسي والتحقق من التدفق الشامل.
- سيستمر التدفق الشامل حتى يصبح التطبيق مستقرًا، وتعمل التطبيقات بشكل جيد مع جميع الأنظمة الأساسية الضرورية ويتم تسليمها إلى العميل.
Note2: - لاختبار توافق المتصفح، لا يتعين علينا الانتقال إلى إعداد VMware، نظرًا لأنه يمكن تثبيت متصفحات متعددة في جهاز واحد بالإضافة إلى إمكانية الوصول إليها أيضًا في وقت واحد.
- في حالة وجود إصدارات مختلفة من نفس المتصفح، يتعين علينا استخدام برنامج VMware الذي تم إعداده نظرًا لأنه لا يمكن الوصول إلى إصدارات متعددة من المتصفح في وقت واحد من نظام واحد.
- يمكننا إجراء اختبار توافق البرامج على منصات مختلفة.
خطأ/مشكلة في اختبار التوافق
هذه الأخطاء هي تلك التي تحدث في منصة واحدة، ولكنها لا تحدث في منصة أخرى.
بشكل عام، تعد أخطاء التوافق مشكلات في واجهة المستخدم، وبعض مشكلات واجهة المستخدم هي كما يلي:
- مسألة المحاذاة
- قضية التداخل
- قضية متناثرة
- قضية الشكل والمظهر
مسألة المحاذاة
مشكلة المحاذاة هي عدم محاذاة عنصر الصفحة بالشكل الصحيح كما نرى في الصورة أدناه:
قضية التداخل
عندما تتداخل إحدى السمات مع سمة أخرى، فقد يحدث ذلك عندما نحاول فتح التطبيق على الأنظمة الأساسية والمتصفحات المختلفة كما نرى في الصورة أدناه:
قضية متناثرة
عندما يقوم مهندس الاختبار بإجراء اختبار التوافق على التطبيق، وكان هذا التطبيق غير متوافق مع جميع المتصفحات والمنصة، ولهذا السبب قد تحدث مشكلات متفرقة كما نرى في الصورة أدناه:
إن اختبار الوظائف والتكامل والتدفق الشامل على الأنظمة الأساسية المختلفة هو ما نقوم به في اختبار التوافق.
قضية التوافق: عندما لا تعمل ميزة التطبيق في أحد أنظمة التشغيل، ولكنها تعمل بشكل جيد في أنظمة التشغيل الأخرى. يحدث ذلك لأن البرنامج الذي كتبه المطور لا يعمل على منصة واحدة فقط، ولكنه يعمل بشكل جيد على جميع المنصات الأخرى.
مشكلة وظيفية: عندما لا تعمل إحدى الميزات في جميع أنظمة التشغيل/الأنظمة الأساسية. وتُعرف أيضًا باسم مشكلة خلل وظيفي.
بالنسبة لاختبار التوافق، يبدو تقرير تنفيذ الاختبار كما يلي:
أدوات اختبار التوافق
فيما يلي بعض أدوات اختبار التوافق الأكثر استخدامًا:
اختبار لامدا
إنها أداة اختبار توافق المتصفح مفتوحة المصدر في السحابة. بمساعدة هذه الأداة، يمكننا اختبار تطبيق الويب الخاص بنا على أي متصفحات للهواتف المحمولة ومتصفحات سطح المكتب تقريبًا. يحتوي LambdaTest على ميزة لقطة الشاشة، والتي تتيح لنا التقاط لقطات شاشة للصفحة الكاملة لصفحات الويب الخاصة بنا.
في هذه الأداة، يمكننا اختبار تطبيقنا على المتصفحات الحقيقية، ولدى المستخدم خيار عدد كبير من متصفحات الهاتف المحمول وسطح المكتب للتحقق من توافق التطبيق.
متصفح ستاك
تساعدنا هذه الأداة على اختبار توافق مواقع الويب وتطبيقات الهاتف المحمول عبر متصفحات ومنصات متعددة.
في هذا يمكننا اختبار تطبيق ويب في مختلف المتصفحات وتطبيقات الهاتف المحمول مثل android و iOS في جميع الأجهزة المحمولة.
المنتج الرئيسي لأدوات BrowserStack هو Live، وAutomate، وApp Live، وApp Automate، وبمساعدة هذه الأدوات، يمكننا الحفاظ على التكلفة.
تساعدنا هذه الأدوات على تقليل الوقت والسعر ونفقات الصيانة المرتبطة بالاختبار.
تصفحEMAll
يمكن لهذه الأداة تشغيل التطبيق على أنظمة تشغيل مختلفة مثل Linux وWindows وmacOS، وهي أداة اختبار عبر المتصفحات.
يتم استخدامه لاختبار التطبيق على جميع متصفحات الأجهزة المحمولة وسطح المكتب، ويمكننا استخدامه مباشرة على أجهزتنا المحلية وفي شبكتنا المحلية.
ويمكننا إجراء اختبار الانحدار والاختبار المرئي دون أي تأخير في الشبكة، ويمكننا أيضًا تسجيل الاختبارات الآلية وتشغيلها على الكثير من متصفحات سطح المكتب والجوال.
TestingBot
يتم استخدام هذه الأداة لإجراء الاختبار على متصفحات مختلفة مثل Firefox وChrome وEdge وIE وSafari وما إلى ذلك. في هذا، يمكننا مقارنة لقطات الشاشة من المتصفحات والأنظمة الأساسية المتعددة واختبار التصميم سريع الاستجابة للتطبيق.
سيوفر عددًا كبيرًا من إصدارات المتصفح للاستخدام الفوري لاختبار الأتمتة.