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

تتوفّر جميع تسجيلات الفيديو والشرائح في مؤتمر GTAC للعام 2014 بشكل علني. يمكنك مشاهدتها من قائمة تشغيل YouTube لمؤتمر GTAC لعام 2014 أو تصفّح المحادثات أدناه:

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

سونال شاه (Google)

الكلمة الافتتاحية - التحرك بسرعة وعدم التوقف عن الأشياء

Ankit Mehta (Google)

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

أتمتة تحسين الويب

جيمس غراهام (Mozilla)

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

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

جعل Chrome أفضل متصفح للجوال

Karin Lundberg (Google)

كان أحد أسباب نجاح Chrome هو مبادئه الأساسية التي تتمثل في السرعة والثبات والبساطة والأمان (مبادئ S الأربعة). عندما أصدرنا متصفح Chrome لنظامي التشغيل Android وiOS، لم نُطبِّق S فقط على المتصفح نفسه، ولكن أيضًا على كيفية إجراء الاختبار التلقائي ونوع الاختبارات التي نجريها:

  • تهدف السرعة إلى اختبار الأداء وإجراء اختبارات سريعة.
  • الاستقرار هو اختبار ثبات وثبات.
  • البساطة مصممة لاختبار أن Chrome يقدم تجربة مستخدم بسيطة ولتسهيل إضافة الاختبارات وتشغيلها.
  • الأمان مخصص لاختبار الأمان.

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

لغة اختبار تلقائي للنماذج السلوكية

Nan Li (Medidata Solutions)

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

يقدم هذا الحديث لغة تلقائية للاختبار للسماح للمختبرين بإنشاء الاختبارات باستخدام نموذج سلوكي واحد فقط مثل مخطط جهاز الدولة. ستتم معالجة ثلاث مشكلات: (1) إنشاء التعيينات من النماذج إلى شفرة الاختبار القابلة للتنفيذ وإنشاء قيم الاختبار، (2) تحويل الرسوم البيانية واستخدام معايير التغطية لإنشاء مسارات الاختبار، (3) حل القيود وإنشاء اختبارات ملموسة.

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

اختبار التغطية في Google

أندريه شيريلا (Google)

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

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

CATJS: التطبيقات التي تختبر نفسها

Ran Snir (HP) وLior Reuven (HP)

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

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

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

تكامل مستمر قابل للتوسع - استخدام برنامج مفتوح المصدر

Vishal Arora (صندوق الإسقاط)

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

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

أنا لا أختبر عادةً ... ولكن عندما أُجري اختبارًا، أجري اختبارًا في مرحلة الإنتاج

غاريث بولس (Netflix)

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

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

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

جاي سرينيفاسان (Google) ومانيش لاتشواني (Google)

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

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

الاختبارات المجانية أفضل من الموز المجاني: استخراج البيانات وتعلم الآلة لبرمجة مراقبة الإنتاج في الوقت الفعلي

Celal Ziftci (Google)

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

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

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

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

اختبار التشغيل التلقائي على جهاز فك ترميز المحتوى بالأشعة تحت الحمراء

Olivier Etienne (برتقالي)

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

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

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

التحدي الذي يواجه مقدّمي الخدمات السحابية بالمقارنة إلى حد كبير وما نفعله بشأنه

أنتوني فولمل (Google)

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

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

عدم إرسال الإنسان مطلقًا لأداء مهمة آلة: كيف يستخدم Facebook برامج التتبع لإدارة الاختبارات

روي ويليامز (Facebook)

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

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

Espresso ، Spoon ، Wiremock ( أو كيف تعلمت التوقف عن القلق وأحب اختبار Android )

مايكل بايلي (American Express)

تعرَّف على مزيد من المعلومات عن إنشاء اختبارات واجهة مستخدم Android التلقائية والسريعة وتنفيذها. سَتَتَضَمَّنُ الْأَدَوَاتْ كُلَّ مِنْ Espresso وَSpoon وWiremock وJennkins. يتم افتراض معرفة أساسية بتطوير برامج Android وجافا.

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

إحصاءات Google BigQuery

Brian Vance (Google)

BigQuery هي خدمة البيانات الضخمة التفاعلية في Google Cloud. يمكن للمستخدمين تحليل تيرابايت من البيانات في ثوانٍ معدودة من خلال طلبات بحث تشبه SQL. وهي مبنية على أساس Dremel، الذي يستخدمه مختبرو Google داخليًا منذ سنوات. سنستعرض بعض الأمثلة، وسنوضح لك كيفية بدء استخدام BigQuery.

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

Selendroid - Selenium لأجهزة Android

Dominik Dary (Adobe)

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

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

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

الحفاظ على العقلية في عالم الوسائط المتعددة التفاعلية

Amit Easow (Comcast)

مع تطور Comcast من شركة كابل إلى شركة رائدة في مجال وسائل الإعلام والتكنولوجيا، أصبحت الفرق الهندسية أكثر ذكاءً أيضًا. عندما انضم أميت إلى Comcast Interactive Media (CIM) في عام 2006، كان متجرًا للاختبار اليدوي. وبعد شحن الموقع الإلكتروني الأول للشركة في عام 2007، بدأ بإنشاء نماذج أولية لبنية أساسية مبرمَجة لاختبار واجهة المستخدم. تم تقديمه إلى Selenium في GTAC 2008 ثم عاد إلى Comcast لإنشاء بنية أساسية تلقائية لاختبارات Selenium Grid وHudson وSubversion. وهو يعمل اليوم على اختبار واجهة برمجة التطبيقات من خلال عمليات النشر إلى الإنتاج كل يوم من أيام الأسبوع. أصبح هذا ممكنًا في Python وGit وGerrit وAntelle.

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

إطلاق النار قريبًا وأسرع مع MSL!

براين روبنز (FINRA) ودانيال كو (FINRA)

إن تقديم البرامج بشكل أسرع بدون المساس بالجودة ليس بالمهمة البسيطة. فنحن جميعًا نرغب في المضي قدمًا بسرعة من خلال تطوير الاختبارات مبكرًا وتنفيذ الاختبارات بشكل أسرع، مع الحد الأدنى من الصيانة. وفي مؤسسة FINRA، طورنا MSL (التي تُعرف باسم "Missile") لتمكين فِرق Agile من الاستفادة من البُنى ذات الطبقات مثل MVC لاختبار رمز واجهة المستخدم بشكل أسرع وأسرع في عزلة.

تدعم MSL اختبار تكامل رمز واجهة المستخدم (مثل جافا سكريبت أو HTML أو CSS) من خلال النشر محليًا على خادم Node.js وتهيئة استجابات HTTP الزائفة من شفرة الاختبار باستخدام أحد برامجنا (جافا أو جافا سكريبت أو Node.js). يقدم هذا الحديث الميزات الرئيسية للغة MSL مع بعض الأمثلة.

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

تجربة المستخدم التجريبية

أليكس إيغل (Google)

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

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

جولة المائدة المستديرة 1 - اختبار الجوّال عبر الأنظمة الأساسية

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

مناقشة الجدول المستدير 2 - تغطية أتمتة المستندات

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

تأثير بنية المنتدى على أداء SAT Solver

زاك نوثام (جامعة واترلو)

تعمل أدوات حل اختبار SCL الحديثة التابعة لـ CLCL على حل حالات SAT كبيرة جدًا داخل الشركة في فترات زمنية قصيرة نسبيًا. من الواضح أن هذه الأدوات لحل المسائل بطريقة ما تستغل بنية الواقع الفعلي. ومع ذلك، لم يتم حتى الآن سوى نتائج قليلة توضح هذه البنية بدقة. في هذا البحث، نقدم دليلاً على أن بنية المجتمع لمراحل اختبار SAT الواقعية مرتبطة بزمن تشغيل أدوات حل اختبار SCL SCL. من المعروف منذ فترة أن مثيلات اختبار SAT على أرض الواقع، تظهر كرسومات بيانية، وتضم مجتمعات طبيعية بها. المنتدى عبارة عن رسم بياني فرعي من الرسم البياني لمثيل SAT، بحيث يحتوي هذا الرسم الفرعي على حواف داخلية أكثر من الصادرة إلى بقية الرسم البياني. غالبًا ما يتميز هيكل منتدى الرسم البياني بمقياس جودة يسمى Q. بشكل بديهي، يكون الرسم البياني ذو البنية المجتمعية عالية الجودة (مرتفعًا في Q) قابلاً للفصل بسهولة بين المجتمعات الأصغر حجمًا، في حين أن المجتمعات ذات الانخفاض Q المنخفض ليست كذلك. نحن نقدم ثلاث نتائج استنادًا إلى البيانات التجريبية التي توضح أن بنية المنتدى للمثيلات الصناعية الحقيقية هي مؤشر أفضل لوقت تشغيل أدوات حل CDCL مقارنة بالعوامل الأخرى الشائعة مثل المتغيرات والبنود. أولاً، نوضح أن هناك ارتباطًا قويًا بين قيمة Q ومقياس المسافة الحرفية حرفيًا لجودة بنود التعارض المستخدمة في سياسات حذف البنود في أدوات حل شبيهة بالجلوكوز. ثانيًا، باستخدام تحليل التراجع، نوضح أن عدد المنتديات والقيمة Q للرسم البياني لمثيلات SAT على أرض الواقع هي أكثر تنبؤًا بوقت تشغيل أدوات حل CDCL مقارنةً بالمقاييس التقليدية مثل عدد المتغيرات أو العبارات. وأخيرًا، نوضح أن مثيلات اختبار SAT التي يتم إنشاؤها عشوائيًا وتكون صعوبتها بصورة أكبر بدرجة 0.05 ≤ Q ≤ 0.13 بالنسبة إلى أدوات حل CDCL.

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

ما هو أبعد من التغطية: ما يكمن في مجموعات الاختبار؟

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

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

وسيبحث هذا الحديث عددًا من الأبعاد الأخرى التي يمكن تقييم مجموعات الاختبار عليها. ويدّعي فريق الحوار أنّ مجموعات الاختبار المحسّنة تكون أكثر قابلية للصيانة وقابلة للاستخدام بشكل أكبر (على سبيل المثال، لأنّها تعمل بشكل أسرع أو تستخدم موارد أقل)، وأنّها تحتوي على عدد أقل من حالات الإخفاق غير المبرّرة. في هذا الحديث، سأقدم وأجمع حقائق حول 10 مجموعات اختبار مفتوحة المصدر (من 8000 إلى 246000 سطر من الشفرات) وتقييم أدائها.

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

استخدام منتجات صديقة للبيئة: تنظيف البيئة السامة على الجوّال

توماس كنيش (Google) وستيفان رامساوير (Google) وValera Zakharov (شركة Google) وVishal Sethia (شركة Google)

وسنقدم أدوات وتقنيات لإنشاء بيئات اختبار سريعة ومستقرة ومحكمة لتنفيذ اختبارات Android في كل من وضعي التطوير التفاعلي والدمج المستمر. ويستند ذلك إلى حديثٍ رفيع المستوى قدمناه في آخر جلسة GTAC.

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