مؤتمر GTAC 2015: العروض التقديمية

ملاحظات افتتاحية

Yvette Nameth (Google)

جارٍ فتح الكلمة الافتتاحية

يورغن أليغاير (Google)

تحدي Uber للاختبار عبر التطبيقات/عبر الأجهزة

Apple Chow ( Uber) وBian Jiang (Uber)

الروابط: الفيديو، العروض التقديمية من Google

بعد فترة وجيزة من الانضمام إلى Uber في آذار (مارس) 2015، واجهنا تحديًا فريدًا لـ Uber أثناء التحقيق في أدوات اختبار واجهة المستخدم لتطبيقات الجوّال. تتطلب العديد من اختبارات السلامة التي نجريها تطبيق المتسابق وتطبيق السائق للتواصل/التنسيق بين إجراءاتهما معًا لإكمال سيناريو الاختبار الشامل. في هذا الحديث، نقدّم حلّاً غير معروف على منصّتنا يُسمّى تشرين الأول (أكتوبر)، وسنناقش كيفية تنسيق عملية التواصل بين التطبيقات المختلفة التي تعمل على أجهزة مختلفة. يمكن استخدام هذا الحل في أي اختبارات تتطلّب التنسيق/التواصل على مستوى تطبيقات أو أجهزة مختلفة (على سبيل المثال، لعبة متعدّدة المستخدمين أو تطبيق مراسلة أو تواصل بين عدة مستخدمين أو غير ذلك).

أتمتة الاختبار بمساعدة الروبوت

Hans Kuosmanen (OptoFidelity) وNatalia Leinonen (OptoFidelity)

الروابط: الفيديو، العروض التقديمية من Google

OptoFidelity هي شركة فنلندية ذات تكنولوجيا عالية وتتمتع بخبرة 10 أعوام في تطوير وتقديم حلول التشغيل التلقائي لاختبار البحث والتطوير. وسنقدّم في هذا الحديث تجاربنا المستقبلية وأساليب الاختبار غير التطفلية المستخدمة في اختبار أداء واجهة المستخدم على الأجهزة الجوّالة. هل تعلم أنّ فريق نظام التشغيل Chrome يستخدم حل روبوت من OptoFidelity لقياس وقت الاستجابة التام بين الأجهزة التي تعمل بنظامَي التشغيل Android وChrome؟

مناشير التلاعب الهوائي للمتعة والربح: الدروس المستفادة من اختبار التكامل عبر الأنظمة الأساسية للجوّال

دان جيوفانيلي (Google)

الروابط: الفيديو، العروض التقديمية من Google

تطوير الجوّال صعب. من الصعب إنشاء بنية أساسية تجريبية. العمل عبر المنصات أمر صعب. اجمع بين المكوّنات الثلاثة حتى تحصل على وصفة للكوارث. في هذا الحديث، سيشارك "دان جيوفانيلي" تجاربه في العمل على مشروع بنية أساسية لاختبار الأجهزة الجوّالة من عدّة منصات. سيناقش الأمور التي سارت على ما يرام، والأمور التي وقعت (للحديث) بشكل خاطئ، وما يتمنى أن يعرفه الآن في البداية. ندعوك إلى الاطّلاع على إحصاءات حول تصميم أدوات الجوّال للمهندسين غير المختصّين بالجوّال والتعرّف على هي The Matrix الرائعة وكيفية التغلب عليها.

أتمتة اختبار الألعاب على الأجهزة الجوّالة باستخدام أجهزة حقيقية

جوكو كاسيلا (Bitbar/Testdroid)

الروابط: الفيديو، العروض التقديمية من Google

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

لحسن الحظ، تتوفّر طرق لاستخدام أطر العمل التلقائية لاختبار الأجهزة الجوّالة بهدف تشغيل التشغيل المبرمَج على الأجهزة الجوّالة للألعاب باستخدام بعض الإبداع والمكتبات المتاحة للجميع. في العرض التقديمي، سيناقش "جوكو كاسيلا" من Testdroid ثلاث طرق مختلفة مع أمثلة واقعية وبعض نماذج الرموز.

طريقة تحضير حساء الزلابية

توني تشانغ (Google)

الروابط: الفيديو، العروض التقديمية من Google

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

سآخذك في رحلة ممتعة من خلال اختبار E2E في اختبار المكوّنات التي ستمنحك الثقة في المنتج النهائي. نأمل أن تكون قد استفدت من منظور جديد عندما تنظر إلى منتجك.

أتمتة اختبار Chromecast

Brian Gogan (Google)

الروابط: الفيديو، العروض التقديمية من Google

لقد أدت شبكة الإنترنت إلى انتشار الأجهزة المتصلة بالإنترنت. يشكّل التحقق من السلوك على مختلف الأجهزة المتبادلة تحديًا كبيرًا من اختبارات التطبيق. لاختبار Chromecast، تم اتّباع عدة أساليب. ونضع أطر العمل التجريبية والبنية الأساسية للمختبر وأدوات الاختبار التي طورناها لإنشاء إشارات جودة موثوقة من المنتج. نوضّح بالتفصيل تحديات اختبار منتج يعمل في بيئات مزدحمة بالشبكة. نقترح أن أدوات الاختبار للأجهزة مثل Chromecast هي في بداياتها، وتقدم فرصًا للابتكار في هندسة اختبار البرامج.

استخدام برامج الروبوت لاختبار تطبيقات Android

Dr.Shauvik Roy Choudhary (Georgia Tech/Checkdroid)

الروابط: الفيديو، العروض التقديمية من Google

يمكن استخدام برامج الروبوت، مثل Monkey لاختبار تطبيق Android بدون بذل الكثير من الجهد اليدوي. هناك عدد كبير من هذه الأدوات المقترحة في الأكاديمية والتي تهدف إلى إنشاء إدخال تجريبي تلقائيًا لتطبيق تطبيقات Android. في هذا الحديث، سأقدّم مجموعة من أدوات إنشاء اختبار إدخال تمثيلي، وسأقدّم دراسة مقارنة لإبراز مواطن القوة والقيود. ستتعرف على معلومات حول هذه الأدوات وكيفية استخدامها لاختبار التطبيق. تتوفّر تفاصيل الدراسة بالإضافة إلى إعداد جهاز افتراضي مع الأدوات على الرابط: http://bear.cc.gatech.edu/~shauvik/androtest/

اختباراتك غير المستقرة

Alister Scott (تلقائي)

الروابط: الفيديو، العروض التقديمية من Google

تمثل الاختبارات غير المستقرة الدعابة لأي مهندس اختبار آلي؛ حيث قال شخص ما (ربما من أليستر) ذات مرة: "يُجري الجنون الاختبارات نفسها مرارًا وتكرارًا ويحصل على نتائج مختلفة". ولا تتسبب الاختبارات غير المستقرة في الشعور باليأس، ولكن ربما لا يوجد شيء مثل الاختبار غير المستقر أو غير المستقر، ربما نحتاج إلى النظر إلى هذه المشكلة من منظور مختلف. من المفترض أن نقضي وقتًا أطول في إنشاء أنظمة أكثر تحديدًا وقابلية للاختبار مقارنة بقضاء وقت في إنشاء اختبارات مرنة ودائمة. ستشارك شركة Alister بعض الأمثلة على الحالات التي أدى فيها إخفاء تشتيت الاختبار إلى حدوث مشاكل حقيقية تحت النظام، وكيفية حل مشاكل تشتيت الاختبار عن طريق إنشاء أنظمة أفضل.

اختبار مرئي تلقائي على نطاق واسع

آدم كارمي (Applitools)

الروابط: الفيديو، العروض التقديمية من Google

يُعد الاختبار المرئي المبرمج اتجاهًا ناشئًا رئيسيًا في منتدى مطوّري البرامج / الاختبار. في هذا الحديث، ستتعرّف على المقصود بالاختبار المرئي والأسباب التي تدعوه لتشغيله بشكل تلقائي. سنتعمّق بشكل مفصّل في بعض التحديات التقنية المرتبطة بالتشغيل المبرمَج في الاختبارات المرئية وسنوضّح كيفية معالجة الأدوات الحديثة لها. سنستعرض بشكل متطوّر أحدث التقنيات التي تتيح تشغيل الاختبارات المرئية على جميع الأجهزة وعبر الأجهزة، كما تقدّم نصائح أساسية للنجاح في الاختبار المرئي على نطاق واسع.

اختبار التراجع

Karin Lundberg (Twitter) وPuneet Khanduri (Twitter)

الروابط: الفيديو، العروض التقديمية من Google

لقد أنهى فريقك للتو عاملاً رئيسيًا في إعادة هيكلة إحدى الخدمات، كما اجتازت جميع اختبارات الوحدة والدمج بنجاح. رائع! ولكن لم ينته الأمر بعد. الآن، عليك التأكّد من أنك لم تخرق أيًّا من هذه الأخطاء وأنّه لم ترصد أي أخطاء مزعجة لم ترصدها بعد. حان وقت استخدام Diffy في العمل.

على عكس الأدوات التي تضمن أن الرمز البرمجي سليم، مثل اختبارات الوحدة أو الدمج، يقارن Diffy سلوك الخدمة المعدّلة من خلال الوقوف على مثيلات الخدمة الجديدة والخدمة القديمة جنبًا إلى جنب، وتوجيه نماذج الطلبات لكل منها، ومقارنة الاستجابات، وتقديم أي تراجعات نشأت عن تلك المقارنات.

بالإضافة إلى ذلك، لقد أطلقنا الأداة المفتوحة المصدر سريعًا، وسرعان ما أصبحت إحدى أشهر مشاريع البرامج المفتوحة المصدر على Twitter.

اختبار إمكانية الوصول المبرمَج لتطبيقات Android

كايسي بورخاردت (Google)

الروابط: الفيديو، العروض التقديمية من Google

سيقدّم هذا الحديث مزايا إمكانية الوصول الأساسية على نظام Android الأساسي ويوضح بعض المخاطر الشائعة التي يواجهها مطوّرو البرامج في ما يتعلق بإمكانية الوصول. ستتعرّف على إطار عمل اختبار إمكانية الوصول الجديد إلى نظام التشغيل Android ودمجه في إطارَي عمل اختبار Espresso وRobolectric. وأخيرًا، ستتعرّف على مدى سهولة إضافة عمليات تحقّق تلقائية من إمكانية الوصول إلى اختباراتك الحالية لمشروعات Android.

أخذ العينات الإحصائية

سيلال زيفتسي (Google) وبن غرينبرغ (طالب خريج في معهد ماساتشوستس للتكنولوجيا)

الروابط: الفيديو، العروض التقديمية من Google

من الشائع استخدام نموذج من بيانات الإنتاج في الاختبارات. أمثلة:

  • اختبار السلامة: يمكنك إدخال نموذج من بيانات الإنتاج في النظام لمعرفة ما إذا كان هناك أي شيء يفشل.
  • اختبار A/B: تولَّ قدرًا كبيرًا من بيانات الإنتاج وشغِّله من خلال الإصدارَين الحالي والجديد لنظامك ووسِّع مخرجات الفحص.

للحصول على عينة من بيانات الإنتاج، تستخدم الفِرق عادةً حلولاً مخصّصة، مثل:

  • النظر يدويًا إلى توزيع حقول محددة (مثل الحقول الرقمية)،
  • اختيار عينة عشوائية تمامًا

ويُرجى العِلم أنّ هذه الأساليب لها جانب سلبي خطير، فهي تفتقد إلى أحداث نادرة (مثل الحالات القصوى)، ما يزيد من خطر حدوث أخطاء غير معروفة في الإنتاج. وللحدّ من هذه المخاطر، تختار الفِرق عينات كبيرة للغاية. ولكن مع هذه العينات الكبيرة، هناك المزيد من السلبيات:

  • لا يزال من الممكن تفويت الأحداث النادرة،
  • يزيد وقت تشغيل الاختبارات بشكل كبير،
  • فالاختلافات أكبر من أن يستوعبها البشر، وهناك قدر كبير من التكرار.

في هذا الحديث، نقترح أسلوبًا جديدًا لأخذ العينات الإحصائية من أجل اختيار "ذكي" لعينة "جيدة" من بيانات الإنتاج التي:

  • تضمن عدم تفويت الأحداث النادرة،
  • تقليل حجم العينة المختارة عن طريق التخلص من التكرارات.

يلتقط أسلوبنا الحالات النادرة/الحديّة، ويخفّض حجم العينة إلى أدنى حد، ويخفّف ضمنيًا العبء اليدوي المتعلق بالاطلاع على مخرجات الاختبار/الاختلافات بين مطوّري البرامج. ويدعم أيضًا التنفيذ الموازي (على سبيل المثال، MapMap) بحيث يمكن معالجة كميات هائلة من البيانات في إطار زمني قصير لاختيار النموذج.

البنية الأساسية لأتمتة Nest

عثمان عبد الله (Nest) وGulia Guidi (Nest) وSam Gordon (Nest)

الروابط: الفيديو، العروض التقديمية من Google

تتضمّن رؤية Nest للمنازل المدروسة استخدام الأجهزة الذكية المترابطة التي تعمل معًا لجعل منزلك أكثر أمانًا وكفاءة في استهلاك الطاقة وأكثر وعيًا. سيركز هذا الحديث على البنية التلقائية وأدوات الاختبار التي تم إنشاؤها للمساعدة في تحقيق هذه الرؤية. تعمل فِرَق مختلفة في Nest على أنظمة خاصة بالأنظمة الأساسية/الأجهزة ومن عدّة أنظمة أساسية لإجراء اختبار التراجع التلقائي وتحليله. ومن خلال استخدام أمثلة محدّدة من تجارب المنتجات في العالم الحقيقي، سنتناول الأجهزة التي تتضمّن عدّة منتجات في البنية الأساسية لاختبار الحلقة وأدوات تحليل تراجع الطاقة بالإضافة إلى مجموعات أدوات خاصة بالكاميرا والكشف عن الحركة.

مولدات الأحداث

روسي روسيف (Splunk)

الروابط: الفيديو، العروض التقديمية من Google

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

تركيب تجريبي متعدد السلاسل

مورالي كريشنا راماناثان (المعهد الهندي للعلوم في بنغالور)

الروابط: الفيديو، العروض التقديمية من Google

غالبًا ما يكون من الصعب تحديد الأخطاء المتزامنة الدقيقة في المكتبات متعددة سلاسل المحادثات التي تنشأ بسبب المزامنة غير الصحيحة أو غير المناسبة باستخدام تقنيات ثابتة فقط. من ناحية أخرى، تعتمد فعالية أدوات الرصد الديناميكية بشكل كبير على مجموعات الاختبار متعددة السلاسل التي يمكن استخدام تنفيذها لتحديد أخطاء المزامنة التي تحدث وتشغيلها، بما في ذلك سباقات البيانات، وحالات التوقف التام، وانتهاكات الذرة. تحتاج عادةً هذه الاختبارات متعددة السلاسل إلى استدعاء مجموعة معيّنة من الطرق مع العناصر المضمّنة في الاستدعاءات التي تتم مشاركتها بشكل مناسب لكشف الخطأ. وبدون الحاجة إلى معرفة مسبقة بهذا الخطأ، قد يكون إنشاء مثل هذه الاختبارات أمرًا صعبًا.

في هذه المحادثة، سأقدّم أسلوبًا خفيفًا وقابلاً للتطوير لتجميع الاختبارات بهدف رصد مخالفات السلامة في سلاسل المحادثات. بالنظر إلى مكتبة متعددة السلاسل ومجموعة اختبار تسلسلية، سأصف تحليلاً مبرمَجًا بالكامل يفحص آثار التنفيذ التسلسلي، وينتج عن ذلك برنامج عميل متزامن يعمل على توجيه الكائنات المشتركة عبر عمليات استدعاء طريقة المكتبة إلى الولايات المؤدّية إلى حدوث خطأ في التزامن. وتوضح النتائج التجريبية على مجموعة متنوعة من مكتبات جافا التي تم اختبارها بشكل جيد فعالية منهجنا في الكشف عن العديد من الأخطاء المعقدة.

تمكين تجارب البث في Netflix

Minal Mishra (Netflix)

الروابط: الفيديو، العروض التقديمية من Google

تُعد تجربة البث الخاصة بالمستخدم التي يتجاوز عددها 69 مليونًا ذات أهمية كبرى لشركة Netflix. ولتحسين هذه العملية بسرعة، نقلنا خوارزميات البث التكيُّفي إلى طبقة JavaScript. وشكّل ذلك تحديًا فريدًا لإصدار برامج عميل JavaScript بشكل متكرر، ما أثّر بشكل مباشر في تجربة البث لدى المستهلك. من خلال استعارة نموذج التسليم المستمر، الذي تم اعتماده على نطاق واسع وناجح لتطبيقات الخدمات، استخدمناه لإيقاف المخاطرة على مدار دورة تسجيل الوصول وتقديم التحديثات بشكل متكرر. في هذه المناقشة، سنشرح مكوّنًا رئيسيًا لهذا النموذج لتفعيل تحديثات البرامج. سنتعمّق في إجراءات الطرح الخاصة بعميل JavaScript وأدواته لمقارنة مدى كفاءة الإصدار بسلامة الإصدار الحالي. وسنشارك أيضًا التحديات التي تواجه هذه العملية.

محاكاة الإنترنت

Yabin Kang (LinkedIn)

الروابط: الفيديو، العروض التقديمية من Google

بالإضافة إلى ذلك، عند التحدّث عن نظام نموذجي جديد في LinkedIn يفيد في محاكاة الإعلانات بشكل صحيح باستخدام عدد قليل من الزيارات الصادرة من أجل اختبارات دمج مستوى الخدمة، سنتحدث أيضًا عن نظرة عامة على استراتيجية Linkedin Mocking. شارك المعرفة وما تعلمناه مع الجميع.

الاختبار الفعال لجهاز استقبال محطة المراقبة بنظام تحديد المواقع العالمي (GPS)

أندرو نودت (لوكهيد مارتن)

الروابط: الفيديو، العروض التقديمية من Google

أصبح من الصعب صيانة محطات مراقبة نظام تحديد المواقع العالمي (GPS) الحالية التي تستخدمها القوات الجوية، ويجري حاليًا العمل على استبدالها بنهج SDR (البرامج المعرَّفة للبرامج المسرَّعة من خلال وحدة معالجة الرسومات). سيتم تقديم نظرة عامة على تحديات الاختبار الفريدة لمستقبِل نظام تحديد المواقع العالمي (GPS) المتخصص بالإضافة إلى فحص عدة أساليب اختبار. مع التركيز على تطبيق نظام تحديد المواقع العالمي (GPS)، فإن طرق الاختبار هذه يمكن تطبيقها بسهولة على جهود SDR الأخرى على مستوى الإنتاج.

التشغيل التلقائي على الأجهزة القابلة للارتداء

Anurag Routroy (Intel)

الروابط: الفيديو، العروض التقديمية من Google

في ظل تزايد استخدام الأجهزة القابلة للارتداء على المستوى الشخصي واستخدام الأنشطة التجارية، حولت جميع الشركات التي تمتلك مساحة قوية في سوق Android تركيزها على هذه التقنية القادمة. وبالتالي، يتم إنشاء تطبيقات متوافقة مع الأجهزة القابلة للارتداء، ما يزيد من جهود اختبار التطبيق على الأجهزة القابلة للارتداء. وبالتالي، يصبح التشغيل التلقائي على الأجهزة القابلة للارتداء مهمًا لتقليل جهود الاختبار وزيادة الكفاءة.

اختبار تكامل موحَّد للأشعة تحت الحمراء وCI (Docker/Vagrant)

Maxim Guenis (Supersonic)

الروابط: الفيديو، العروض التقديمية من Google

يكافح مطوّرو البرامج يوميًا لتجهيز بيئة تطوير محلية تعمل عند تطوير البرامج وتصحيح الأخطاء والمضيّ في دورة الدمج المستمرة.يمكننا حلّ هذه المشكلة عن طريق دمج Docker والاستخدام في أداة CI. تسمح هذه المجموعة بالتحكم في التطبيقات على مستوى الحزمة على أجهزة التطوير، مع إمكانية استخدام الحزمة نفسها في اختبارات الدمج. سنناقش في هذا الحديث ما يلي:

  • استخدام Docker في اختبارات التكامل مع CI
  • التحكم في حزمة بدلاً من تطبيق الإرساء أو التطبيق
  • التحكم في إصدار بيئات التطوير والاختبار، وتوزيعه بسهولة باستخدام أدوات git و Docker.
  • دعم سلس لتشغيل Dockers على نظام التشغيل Mac والنوافذ.

إزالة أجزاء الاختبار غير المفيدة

باتريك لام (جامعة واترلو)

الروابط: الفيديو، العروض التقديمية من Google

لقد أدى تخصص تقنيات التحليل الثابت لمجموعات الاختبار إلى نتائج مثيرة للاهتمام. سبق أن عرفنا أنّ معظم الاختبارات هي رموز بسيطة خط مستقيم، وهي عبارة عن تسلسل من بيانات الإعداد متبوعة بحمولة مكوّنة من تأكيدات. نوضّح كيف يمكن للتحليل الثابت تحديد بيانات عمليات الإعداد غير المفيدة، ما يتيح لمطوّري البرامج تبسيط حالات الاختبار وتسريعها.

لا ترتبط التغطية ارتباطًا وثيقًا بمدى فعالية حزمة الاختبار

لورا إنوزيمتسيفا (جامعة واترلو)

الروابط: الفيديو، العروض التقديمية من Google

وغالبًا ما تُستخدم تغطية مجموعة الاختبار كخادم وكيل لقدرتها على اكتشاف الأخطاء. ومع ذلك، فشلت الدراسات السابقة التي بحثت في العلاقة بين تغطية الرمز وفعالية "مجموعة الاختبار" في الوصول إلى إجماع حول طبيعة وقوة العلاقة بين سمات مجموعة الاختبار هذه. علاوةً على ذلك، تم إجراء عدد كبير من الدراسات باستخدام برامج صغيرة أو برامج اصطناعية، ما يجعل من غير الواضح ما إذا كانت نتائجها عامة لبرامج أكبر حجمًا، أمّا بعض الدراسات لم تأخذ في الاعتبار التأثير المربك لحجم مجموعة الاختبار. لقد وسّعنا نطاق هذه الدراسات من خلال تقييم العلاقة بين حجم جناح الاختبار ومدى تغطيته وفعاليته لبرامج جافا الواقعية، ودراستنا هي الأحدث حتى الآن في المواد العلمية. تم قياس تغطية البيان وتغطية القرار وتغطية الحالات المعدَّلة لهذه الأجنحة، واستخدمنا اختبار الطفرة لتقييم فعالية رصد الأخطاء. تبيّن لنا أنّ هناك علاقة منخفضة إلى متوسطة بين التغطية والفعالية عندما يتم التحكم في عدد حالات الاختبار في المجموعة. بالإضافة إلى ذلك، تبيّن لنا أنّ أشكال التغطية القوية لا تقدّم معلومات أكثر فعالية عن مدى فاعلية المجموعة.

الخلفيات المزيّفة باستخدام RpcReplay

Matt Garrett (Google)

الروابط: الفيديو، العروض التقديمية من Google

إن الحفاظ على سرعة أداء الاختبارات واستقرارها أمر في غاية الأهمية. ويكون ذلك صعبًا عندما تعتمد الخوادم على العديد من الخلفيات. وعلى مطوّري البرامج الاختيار من بين الاختبارات الطويلة وغير المستقرة أو كتابة عمليات تنفيذ مزيّفة والحفاظ عليها. بدلاً من ذلك، يمكن إجراء الاختبارات باستخدام الزيارات المسجّلة من هذه الخلفيات. وهذا يوفر أفضل ما في العالمين، مما يسمح لمطوّري البرامج باختبار سريع في الخلفية الفعلية.

مختبر التشغيل التلقائي لاختبار ChromeOS

سيمران باسي (Google) وكريس سوسا (Google)

الروابط: الفيديو، العروض التقديمية من Google

يشحن ChromeOS حاليًا أكثر من 60 جهاز Chromebook/صندوقًا مختلفًا يعمل كل منها ببرنامجه الخاص. وعلى أرض الواقع، يحصل العملاء على نظام جديد كل 6 أسابيع. لن يكون هذا ممكنًا بدون "نظام الدمج المستمر" الفعّال الذي يخضع للتدقيق من أكثر من 200 مطوّر برامج. في هذا الحديث، سنشرح البنية الكلّية مع التركيز بشكل خاص على مختبر الاختبار التلقائي. بالإضافة إلى ذلك، نناقش موضوع Moblab (اختصارًا للأجهزة الجوّالة (التجريبية) الاختبارية، وهي البنية الأساسية الكاملة للاختبارات المبرمَجة التي يتم تشغيلها من جهاز chromebox واحد. ويستخدم العديد من شركائنا هذا النظام لكي يتمكنوا أيضًا من إجراء اختبارات بالطريقة التي نعتمدها.