اختبار تطبيقك

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

إعداد بيئة الاختبار

من الضروري توفير بيئة اختبار قوية لاختبار تطبيق Home APIs.

من الاستراتيجيات الجيدة عزل أجهزة اختبار Home API على شبكة Wi-Fi مخصّصة. يمنع ذلك حدوث تداخل من الأجهزة الأخرى ويسمح لك بمحاكاة ظروف الشبكة المختلفة، مثل النطاق الترددي المقيّد.

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

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

تجميع الأدوات

في ما يلي الأدوات المفيدة في اختبار تطبيق Home APIs:

الأداة الوصف
Google Home Plugin for Android Studio يتيح الوصول إلى Google Assistant Simulator وHome Graph Viewer وGoogle Cloud Logging وعارض سجلّات Android Debug Bridge ‏ (adb) Log viewer.
Google Home Playground لا يغني عن إجراء الاختبار باستخدام أجهزة فعلية، ولكنه قيّم جدًا في العديد من سيناريوهات الاختبار.
Matter Virtual Device (MVD) تطبيق محاكاة آخر يمكن أن يكون مفيدًا عند إجراء الاختبار باستخدام Matter الأجهزة في تطبيق Home APIs.
Espresso يتيح لك أتمتة اختبار واجهة المستخدم. عليك محاكاة واجهة برمجة التطبيقات الأساسية لمحاكاة تفاعلات الأجهزة.
محاكي الشبكة يتيح لك محاكاة ظروف الشبكة المختلفة وردود واجهة برمجة التطبيقات، وهو مفيد بشكل خاص إذا كانت واجهة برمجة تطبيقات Home تستخدم نظامًا خلفيًا مستندًا إلى السحابة الإلكترونية.
Android Studio Logcat يتعامل مع بيانات السجلّات ويحلّلها.

تطبيق أساليب واستراتيجيات اختبار مختلفة

عليك تطبيق مجموعة متنوعة من أساليب الاختبار على تطبيق Home APIs. للحصول على معلومات عامة عن الطرق المختلفة، يُرجى الاطّلاع على اختبار التطبيقات على Android. بالإضافة إلى اختبار تجربة المستخدم والأمان الذي يُتوقّع أن تخضع له جميع تطبيقات Android، تكون بعض جوانب الاختبار ذات صلة خاصة بتطبيقات Home APIs، ويتم إبرازها بمزيد من التفصيل في الأقسام التالية.

الاختبار الوظيفي

بناءً على إمكانات تطبيقك، قد تحتاج إلى إيلاء اهتمام خاص لبعض المجالات التالية:

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

اختبار الأداء

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

اختبار الموثوقية والثبات

بسبب اعتماد تطبيقات Home APIs على الاتصال بالشبكة، يجب اختبارها في السيناريوهات التالية:

  1. تذبذب الشبكة
    • محاكاة انقطاع شبكة Wi-Fi والإشارات الضعيفة والتبديل بين الشبكات
    • تأكَّد من أنّ تطبيقك يعالج حالات الانقطاع وإعادة الاتصال بشكل سليم.
    • تأكَّد من أنّ الأوامر يتم وضعها في قائمة الانتظار وتنفيذها عند استعادة الاتصال، أو يتم عرض رسائل الخطأ المناسبة.
    • اختبِر التطبيق من شبكات بعيدة، وليس فقط من الشبكة المنزلية.
  2. انقطاع اتصال الجهاز
    • افصل الأجهزة عن مصدر الطاقة.
    • أعِد تشغيل الأجهزة.
  3. العمليات المتزامنة
    • أرسِل سلسلة سريعة من الأوامر.
    • اطلب من عدة مستخدمين محاولة التحكّم في الجهاز نفسه في آنٍ واحد.
    • اختبِر المشاهد وعمليات الأتمتة المتداخلة.
  4. معالجة الأخطاء
    • فرض أخطاء في واجهة برمجة التطبيقات، مثلاً من خلال محاكاة ردود خادم واجهة برمجة التطبيقات المستندة إلى السحابة الإلكترونية
    • اختبِر الإدخال غير الصالح من المستخدم.
    • تحقَّق من التكيّف مع الإصدارات الأقدم ورسائل الخطأ المفيدة.
  5. الموثوقية : شغِّل التطبيق والأجهزة المتصلة لفترات طويلة للكشف عن أي تسرّبات محتملة للذاكرة أو مشاكل في الثبات.

قبل إطلاق تطبيقك

يُنصح بإجراء اختبار دقيق لتطبيق يستخدم Home APIs للتأكّد من استيفائه جميع المتطلبات الوظيفية ومتطلبات الجودة قبل إطلاقه. استخدِم تقرير اختبار تطبيق Google Home APIs كدليل لاختبار وظائف تطبيقك.

إذا طُلب منك إرسال تقرير اختبار تطبيق Google Home APIs، أرسِل التقرير إلى Google Technical Account Manager (TAM) ليتمكّن من مراجعة التقرير واستخدامه كمرجع عند اختبار تطبيقك.