من فضلك تسجيل الدخول أو تسجيل لتفعل ذلك.

لطالما كان اختبار تطبيقات Windows لسطح المكتب تحديًا كبيرًا للمطورين، خاصة مع صعوبة موازاة آلاف عمليات التشغيل شهريًا. لكن الآن، ظهر حل يعالج هذه المشكلة من خلال تشغيل هذه الاختبارات من بيئة Linux باستخدام آلات افتراضية (VMs) سريعة الزوال، مصممة خصيصًا لتكون مثل الهواتف المحمولة المستخدمة لمرة واحدة.

تحديات اختبار تطبيقات Windows

  • الحاجة إلى آلة افتراضية كاملة لكل اختبار، لأن حاويات Windows لا تتضمن سطح مكتب رسومي لتشغيل التطبيق.
  • بطء الإقلاع: تستغرق VM بنظام Windows من دقيقتين إلى 3 دقائق لتبدأ.
  • الحاجة إلى تسجيل الدخول: واجهة التشغيل الآلي لواجهة المستخدم (UIA) تتطلب جلسة سطح مكتب نشطة ومسجّل الدخول.
  • تراكم البيانات: الملفات المثبتة ومفاتيح التسجيل وملفات تعريف المستخدمين والعمليات المتبقية جميعها تستمر بين عمليات التشغيل.
  • نقص الرؤية المدمجة: بخلاف المتصفحات التي توفر سجلات ولقطات شاشة، فإن الآلات البعيدة التي تعمل بنظام Windows لا توفر شيئًا تلقائيًا.

لمواجهة هذه التحديات، تم تطوير بنية جديدة توقف التعامل مع أجهزة Windows كخوادم تقليدية، وتتعامل معها كأجهزة محمولة: جهاز واحد يتم تخصيصه لاختبار واحد ثم يتم التخلص منه.

كيف تعمل البنية الجديدة؟

تستعير البنية الأساسية لهذه الطريقة من بنية اختبار الأجهزة المحمولة، حيث لا يمكن تشغيل كود الاختبار على الجهاز الذي يتم اختباره، ويحتاج كل اختبار إلى جهاز خاص به. يعمل مُتحكِّم (controller) في Kubernetes للحفاظ على مجمع من VMs بنظام Windows على Google Compute Engine (GCE)، ويقوم بتوزيعها على الاختبارات. يقوم مُشغّل (runner) يعمل كـ pod في Linux بتشغيل كود الاختبار ويتصل بـ VM عبر ثلاثة أنواع من الاتصالات:

  • Playwright يتصل عبر CDP (بروتوكول أدوات مطوري Chrome) للتفاعل مع أي شيء داخل المتصفح.
  • Appium يتعامل مع تطبيقات Windows الأصلية (Native apps) عبر WebdriverIO.
  • بث WebRTC (الاتصال في الوقت الفعلي عبر الويب) ينقل شاشة الجهاز لمشاهدة الاختبارات مباشرة وتسجيلها.

كل VM بنظام Windows تكون سريعة الزوال، أي لا يتم إعادة استخدامها بعد انتهاء الاختبار. لا يتم تسجيل الدخول إليها أو تحديثها يدويًا أو تشغيلها لأسابيع. يقوم الاختبار بطلبها، استخدامها لمرة واحدة، ثم يتم تدميرها واستبدالها بـ VM جديدة. كما تحافظ «المجمعات الدافئة» (warm pools) على VMs جاهزة للإقلاع وتسجيل الدخول، مما يلغي وقت الإقلاع البارد الذي يتراوح من دقيقتين إلى ثلاث دقائق، وتضمن بيئات نظيفة باستمرار.

ماذا يعني هذا للمطورين؟

نرى أن هذه البنية الجديدة توفر حلًا جذريًا لمشكلات اختبار تطبيقات سطح المكتب التي تعمل بنظام Windows. فالمطورون سيتمكنون من تشغيل آلاف الاختبارات بشكل متوازٍ وبسرعة أعلى بكثير مما كان متاحًا في السابق، مع ضمان بيئة اختبار نظيفة ومعزولة في كل مرة.

هذا يقلل من مشكلات «يعمل لدي، لا يعمل في بيئة الاختبار»، ويجعل عملية التكامل المستمر (CI/CD) أكثر فعالية. إضافة إلى ذلك، فإن التحديثات تتم بسهولة دون الحاجة لعمليات ترقية معقدة، حيث يتم استبدال VMs القديمة تلقائيًا بأخرى جديدة، مما يزيل الكثير من أعباء إدارة أسطول أجهزة Windows.

المصدر: qawolf.com

«Passkeys» ليست مصيدة: توضيح لمخاوف التوثيق
Cloudflare Hyperdrive يدعم MySQL رسميًا بعد إصلاح مشكلات مهمة

Reactions

0
0
0
0
0
0
بالفعل كان رد فعل لهذا المنصب.

ردود الفعل