الاختبارات

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

القيود

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

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

  1. أنشئ نموذج متغيّر جديدًا. انقر على النماذج في شريط التنقّل الأيمن، ثم انقر على جديد ضمن القسم نماذج المتغيرات.

  2. انقر على الحقول.

  3. انقر على إضافة حقل واختَر إدخال النص. أدخِل اسمًا للحقل text1 واضبط الاسم المعروض على "Text 1".

  4. في علامة التبويب الشفرة، استبدل الشفرة الافتراضية بجافا سكريبت في وضع الحماية هذه:

    let input = data.text1;
    return input.toUpperCase();
    
  5. انقر على الاختبارات لفتح علامة التبويب "الاختبار".

  6. انقر على إضافة اختبار وغيّر اسم الاختبار من "اختبار بدون عنوان 1" إلى "مقبض سلاسل".

  7. انقر على رمز التوسيع () لإظهار محرِّر JavaScript في وضع الحماية في الاختبار. استبدل الشفرة بجافا سكريبت في وضع الحماية هذه:

    // Call runCode to run the template's code with a lowercase string
    let variableResult = runCode({text1: 'this is a test'});
    // Validate that the result of runCode is an uppercase string.
    assertThat(variableResult).isEqualTo('THIS IS A TEST');
    

    ينقل هذا الاختبار السلسلة 'this is a test' إلى المتغيّر ويتحقّق من أنّ المتغيّر يعرض القيمة المتوقّعة 'THIS IS A TEST'. يتم استخدام واجهة برمجة تطبيقات runCode لتشغيل رمز النموذج في علامة التبويب الرمز. الوسيطة إلى runCode هي كائن يُستخدم كبيانات عامة. تعرض واجهة برمجة تطبيقات assertThat كائنًا يمكن استخدامه لإجراء تأكيدات بطلاقة على قيمة موضوع معيّن.

  8. انقر على ▶ لتشغيل الاختبارات لتشغيل الاختبار. ستظهر نتيجة الاختبار في وحدة التحكّم.

    يشغّل الزر ▶ تشغيل الاختبارات كل الاختبارات الممكنة في النموذج، بالترتيب الموضح. لتغيير الترتيب، استخدم رمز السحب (⠿). يمكن تمكين الاختبار أو تعطيله بشكل مؤقت من خلال النقر على الدائرة على يمين اسم الاختبار. لتشغيل اختبار واحد، انقر على الزر ▶ الذي يظهر عند تحريك الماوس فوق الاختبار.

    يجب أن تطبع وحدة التحكم إجمالي عدد الاختبارات التي تم إجراؤها وعدد الاختبارات التي أخفقت، إن وجدت. في هذه الحالة، تم تشغيل اختبار واحد فقط ومن المفترض أن يجتاز الاختبار.

  9. انقر على إضافة اختبار مرة أخرى لإضافة اختبار ثانٍ. غيِّر اسم الاختبار من "اختبار بدون عنوان 2" إلى "مقابض غير محددة".

  10. انقر على الاختبار لتوسيعه واكشف محرر جافا سكريبت في وضع الحماية. أدخل جافا سكريبت في وضع الحماية في المحرر:

    let variableResult = runCode({});
    assertThat(variableResult).isEqualTo(undefined);
    
  11. انقر على ▶ إجراء اختبارات لتشغيل كل الاختبارات في وقت واحد. ستظهر نتيجة الاختبار في وحدة التحكّم.

    من المفترض أن يتعذّر اختبار أسماء الحسابات غير محددة. تم العثور على خطأ.

  12. انقر على الرمز للرجوع وتعديل رمز جافا سكريبت للنموذج في وضع الحماية. حدِّث جافا سكريبت في وضع الحماية على النحو التالي:

    const getType = require('getType');
    
    let input = data.text1;
    if (getType(input) !== 'string') {
      return input;
    }
    return input.toUpperCase();
    

    تتبع الشفرة المحدّثة أفضل الممارسات للتحقق من المتغير input قبل استخدامه.

  13. انقر على الاختبارات للرجوع إلى قائمة حالات الاختبار.

  14. انقر على ▶ إجراء اختبارات لتشغيل كل حالات الاختبار مرة أخرى. من المفترض أن تجتاز هذه التجربة اختبار مقابض غير محدَّدة.

  15. انقر على حفظ، وأغلق محرر النماذج.