مجموعة أدوات اختبار Google Home

من السحابة الإلكترونية إلى السحابة الإلكترونية    حزمة تطوير برامج المنزل المحلية

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

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

تشمل الاختبارات التي يتم تنفيذها من خلال Test Suite، على سبيل المثال لا الحصر، ما يلي:

  • تتحقّق هذه الأداة من تنفيذ Report State وRequest Sync لأجهزتك وسماتها.

  • يتحقّق من تنفيذ نية QUERY لجهازك وأنّ نتائجها تتطابق مع نتائج Report State.

يمكنك تشغيل أداة "Test Suite" بالنقر على الزر أدناه:

تشغيل Test Suite

اختبار الإجراء بنفسك

يوضّح القسم التالي كيفية تشغيل Test Suite على جهازك ومشروع "الإجراء" الخاص بالمنزل المزوّد بأجهزة ذكية. يتطلب Test Suite تسجيل الدخول حتى يتمكن من فحص الأجهزة في Google Home Graph وإرسال الأوامر مباشرة إلى Google Assistant.

لاختبار الإجراء بنفسك، اتّبِع الخطوات التالية:

  1. في متصفّح الويب، افتح Test Suite.
  2. سجِّل الدخول إلى Google باستخدام الزر في أعلى يسار الصفحة.

  3. اضبط تفاصيل المشروع (Project Details):

    1. في حقل رقم تعريف المشروع، أدخِل معرّف المشروع الخاص بإجراء المنزل المزوّد بأجهزة ذكية.
    2. انقر على التالي.
  4. اضبط إعدادات الاختبار:

    1. في حال اعتماد عملية الدمج مع Cloud-to-cloud، يجب ترك القيمة التلقائية لـ مهلة مزامنة الطلبات/الإبلاغ عن الحالة بدون تغيير. ومع ذلك، لأغراض الاختبار، يمكنك تغيير قيمة المهلة إذا كان وكيلك يستغرق وقتًا أطول لإبلاغ Home Graph بالحالة.
    2. في حال اعتماد عملية دمج Cloud-to-cloud، تأكَّد من تفعيل خيار اختبار مزامنة الطلبات. أثناء الاختبار، سيُطلب منك إضافة جهاز أو تعديله أو إزالته والتحقّق مما إذا كانت قائمة الأجهزة قد تغيّرت في Home Graph. تتم إجراءات التغيير من خلال التكامل الذي تختبره. يجب أن يتضمّن التكامل قيد الاختبار دائمًا جهازًا واحدًا على الأقل مرتبطًا بالمستخدم الوكيل.

    3. إذا كنت تستخدم سمة Scene، اختَر سمة "اختبار المشهد".

    4. إذا كنت تشغّل الحزمة الاختبارية لأجهزة Local Home، اختَر يتوافق مع حزمة تطوير البرامج (SDK) لـ Local Home.

      1. اختَر التنفيذ المحلي أو الإعداد السلس.
      2. انقر على يتيح طلب البحث المحلي إذا كان الجهاز يمكنه التعامل مع نية QUERY محليًا.
  5. أجرِ اختبارًا تجريبيًا واطّلِع على النتائج:

    1. انقر على التالي لبدء إجراء الاختبارات. تعرض الواجهة الأجهزة والسمات التي يتم اختبارها.
  6. انتقِل إلى صفحة النتائج والإرسال:

    1. بعد اكتمال الاختبارات، انقر على التالي لعرض النتائج.

تتضمن نتائج الاختبار عدد الاختبارات التي تم اجتيازها والتي فشلت، والنتيجة النهائية التي تشير إلى النسبة المئوية للنجاح.

اختبار التحقّق من ربط الحساب

يؤدي ربط الحسابات دورًا مهمًا في منظومة Google المتكاملة للمنزل المزوّد بأجهزة ذكية. يتحقّق اختبار التحقّق من ربط الحساب في Test Suite من خدمة OAuth بحثًا عن أي مشاكل محتملة.

يحتوي اختبار التحقّق من ربط الحساب على اختبارات للتحقّق من صحة رموز الدخول والرموز المميّزة لإعادة التحميل:

اختبار التحقّق من رمز الدخول

يتم اختبار رموز الدخول التي يتم عرضها من نقطة نهاية تبادل الرموز المميزة للتأكّد من أنّها بتنسيق صالح ويتم عرضها مع رمز مميز صالح لإعادة التحميل.

عناصر الاختبار الشرح
التحقّق مما إذا كان رمز الدخول بتنسيق JWT لا تنصح ميزة "ربط حساب Google" باستخدام رموز الدخول بتنسيق JWT. إذا تم العثور على تنسيق JWT، سيظهر التحذير التالي: The access token seems to be JWT, this is not good. Because it unnecessarily exposes information about partner implementation and we recommend opaque symmetric encrypted access token.
تحقَّق من أنّ الرمز المميّز للوصول القابل لانتهاء الصلاحية يحتوي على رمز مميّز لإعادة التحميل. يجب تقديم رمز مميّز لإعادة التحميل عندما يكون رمز الدخول قابلاً لانتهاء الصلاحية. سيتعذّر إجراء هذا الاختبار في حال عدم العثور على رمز مميّز لإعادة التحميل.

اختبار التحقّق من صحة الرمز المميّز لإعادة التحميل

يتم اختبار الرموز المميزة لإعادة التحميل للتأكّد من أنّ نقطة نهاية تبادل الرموز المميزة تتبادلها بشكل صحيح مع الرموز المميزة الجديدة للوصول.

عناصر الاختبار الشرح
يتم تحديث الرمز المميز لإعادة التحميل باستخدام رمز مميز غير صالح لإعادة التحميل، ويتم التحقق من استجابة الشريك. يجب أن يعرض الخادم خطأ HTTP 400 Bad Request مع {"error": "invalid_grant"} لطلب رمز مميز لإعادة التحميل غير صالح. إذا لم يتطابق الردّ مع "رمز الخطأ أو رسالة الخطأ"، سيفشل إطار الاختبار هذا. لمزيد من المعلومات، يُرجى الانتقال إلى استبدال الرموز المميزة لإعادة التحميل برموز مميزة للوصول.
اختبِر ما إذا تم تعديل رمز الدخول بعد إعادة تحميل الرمز المميّز. يجب عرض رموز الدخول الجديدة استجابةً لطلبات الرموز المميزة لإعادة التحميل. إذا قدّم الخادم رمز الدخول نفسه، سيتعذّر إكمال إطار الاختبار.
تحقَّق مما إذا كان رمز الدخول غير منتهي الصلاحية لا يزال صالحًا. سيتم عرض وقت انتهاء صلاحية رمز الدخول.
تحقَّق مما إذا تم تدوير الرمز المميز لإعادة التحميل أثناء إعادة التحميل. نتحقّق مما إذا تم تغيير الرموز المميزة لإعادة التحميل بعد طلب رمز مميز لإعادة التحميل. إذا تغيّر الرمز المميز لإعادة التحميل، يجب أن يُبطل الخادم الرمز المميز القديم لإعادة التحميل فقط بعد استخدام رمز مميز جديد لإعادة التحميل، وذلك لمنع حالات السباق التي قد تؤدي إلى إلغاء ربط حساب المستخدم. سيفشل الاختبار إذا ألغيت الرمز المميز القديم لإعادة التحميل قبل استخدام الرمز الجديد.

رسائل الخطأ

يسرد الجدول التالي بعض رسائل الخطأ الشائعة التي قد تواجهها والطريقة المقترحة لحلها.

رسالة الخطأ كيفية حلّ المشكلة
لم يتم استخدام HomeGraph API في المشروع <_id_> من قبل، أو قد تكون الواجهة غير مفعّلة. تأكَّد من تفعيل HomeGraph API.
لم يتم العثور على الكيان المطلوب تأكَّد من أنّ agentUserId صالح ومرتبط بخدمتك.

تأكَّد من حصولك على إذن resourcemanager.projects.get في المشروع ${your project id} ومن منحك جميع الأذونات في شاشة طلب الموافقة.

حدث خطأ أثناء الحصول على بيانات الوحدة: خطأ في getModuleData: استجابة HTTP غير ناجحة لـ https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. اتّبِع التعليمات الواردة في مقالة تحديد مشاكل أذونات إدارة الهوية وإمكانية الوصول وحلّها للتأكّد من أنّ حسابك لديه أذونات resourcemanager.projects.get للمشروع.
  2. انتقِل إلى صفحة التطبيقات التي يمكنها الوصول إلى حسابك للتحقّق من الأذونات التالية لـ "حزمة اختبارية للمنزل المزوّد بأجهزة ذكية":
    • معلومات الحساب الأساسية
      1. الاطّلاع على عنوان البريد الإلكتروني الرئيسي لحسابك على Google
      2. الاطّلاع على معلوماتك الشخصية، بما في ذلك أيّ معلومات شخصية اخترت السماح للجميع بالاطّلاع عليها
    • أذونات وصول إضافية
      1. استخدام Assistant: إمكانية وصول واسع النطاق لحسابك على Google
      2. التحقق من الأجهزة المنزلية الذكية والتحكّم فيها في قاعدة البيانات Home Graph
    إذا ظهرت لك رسالة خطأ في الأذونات، عليك إزالة إذن الوصول أولاً ومنح جميع الأذونات في شاشة طلب الموافقة عند تسجيل الدخول مرة أخرى.

إرسال نتائج الاختبار

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

لإرسال نتائج الاختبار واعتماد عملية دمج Cloud-to-cloud، يُرجى اتّباع الخطوات التالية:

  1. بعد تلقّي نتائج الاختبار والاستعداد لاعتماد عملية دمج Cloud-to-cloud، انقر على إرسال في أداة Test Suite.
  2. انتقِل إلى Google Home Developer Console > Cloud-to-cloud > إصدار شهادة.
  3. اختَر عملية الدمج التي تريد اعتمادها.
  4. ضمن المستندات، أدخِل رقم تعريف نتائج "Test Suite".
  5. املأ جميع الحقول المطلوبة، ثم انقر على إرسال.