كيفية اختبار الدعائم المكونة مع الانزيم؟

Oct 21, 2025

ترك رسالة

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

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

فهم الانزيم

Enzyme هي أداة مساعدة لاختبار JavaScript تم تطويرها بواسطة Airbnb. يوفر مجموعة من أدوات الاختبار المساعدة التي تسهل اختبار مكونات React. يتيح لك Enzyme معالجة مخرجات مكونات React واجتيازها والاستعلام عنها بطريقة مشابهة لـ jQuery. وهو يدعم أوضاع عرض مختلفة، مثل العرض السطحي، وعرض DOM الكامل، والعرض الثابت، مما يمنحك المرونة في اختبار مكوناتك.

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

قبل أن تبدأ في اختبار دعائم المكونات باستخدام Enzyme، تحتاج إلى إعداد بيئة الاختبار الخاصة بك. فيما يلي الخطوات للبدء:

  1. تثبيت الانزيم ومحولاته: يمكنك تثبيت الإنزيم ومحولاته باستخدام npm أو الغزل. على سبيل المثال، إذا كنت تستخدم React 16، فستحتاج إلى التثبيتانزيموإنزيم-محول-رد فعل-16.
تثبيت npm --حفظ-محول إنزيم الإنزيم-رد فعل-16
  1. تكوين المحول: في ملف إعداد الاختبار، قم بتكوين محول الإنزيم. هنا مثال:
استيراد الإنزيم من "الإنزيم"؛ محول الاستيراد من 'إنزيم-محول-رد فعل-16'؛ Enzyme.configure({ المحول: محول جديد () });

اختبار دعائم المكونات مع العرض الضحل

العرض الضحل هو أسلوب يسمح لك بعرض مكون "بمستوى واحد عميق" دون عرض أي من أبنائه. وهذا مفيد لاختبار المكونات الفردية بشكل منفصل. فيما يلي مثال لكيفية اختبار دعائم المكونات باستخدام العرض السطحي:

استيراد رد فعل من "رد فعل"؛ استيراد {سطحي} من "الإنزيم"؛ استيراد MyComponent من "./MyComponent"؛ وصف('MyComponent', () => { it('should تقديم مع الدعائم الصحيحة', () => { constprops = { title: 'عنوان الاختبار'، الوصف: 'وصف الاختبار' }; const Wrapper = surface(<MyComponent {...props} />); توقع(wrapper.prop('title')).toBe('عنوان الاختبار'); توقع(wrapper.prop('description')).toBe('وصف الاختبار'); }); });

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

Factory Supply Organic Dried Avocado PowderHigh-quality Turpentine Oil/turpentine Oil Factory Price/mineral Turpentine Oil

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

أنواع الخاصيات هي طريقة لتوثيق وتنفيذ أنواع الخاصيات التي يتوقعها المكون. يمكنك استخدام Enzyme لاختبار ما إذا كان أحد المكونات يتعامل بشكل صحيح مع أنواع الدعامات. هنا مثال:

استيراد رد فعل من "رد فعل"؛ استيراد PropTypes من "أنواع الدعامة"؛ استيراد {سطحي} من "الإنزيم"؛ const MyComponent = ({ title }) => ( <div>{title}</div> ); MyComponent.propTypes = { العنوان: PropTypes.string.isRequired }; وصف('MyComponent', () => { it('يجب أن يلقي تحذيرًا بشأن الدعامة المفقودة', () => { console.error = jest.fn(); surface(<MyComponent />); توقع(console.error).toHaveBeenCalled(); }); });

في هذا المثال، نستخدمis.fn()للتجسس علىconsole.errorطريقة. نقوم بعد ذلك بتقديم المكون دون تمرير المطلوبعنواندعم. إذا فشل التحقق من صحة نوع الدعامة، فسيتم تسجيل تحذير إلى وحدة التحكم، وسينجح اختبارنا إذا كانconsole.errorتم استدعاء الطريقة.

اختبار الدعائم مع عرض DOM الكامل

يعد عرض DOM الكامل مفيدًا عندما تحتاج إلى اختبار التفاعل بين المكون وأبنائه أو عندما تحتاج إلى اختبار سلوك المكون في بيئة أكثر واقعية. فيما يلي مثال لكيفية اختبار دعائم المكونات باستخدام عرض DOM الكامل:

استيراد رد فعل من "رد فعل"؛ استيراد {جبل} من "الإنزيم"؛ استيراد MyComponent من "./MyComponent"؛ وصف('MyComponent', () => { it('يجب تقديم الدعائم الصحيحة باستخدام عرض DOM الكامل', () => { constprops = { title: 'Test Title', description: 'Test description' }; const Wrapper = mount(<MyComponent {...props} />); توقع(wrapper.prop('title')).toBe('عنوان الاختبار'); توقع(wrapper.prop('description')).toBe('وصف الاختبار'); }); });

في هذا المثال، نستخدمجبلطريقة بدلا منأجوف. الجبلتحول الطريقة المكون وأفرعه إلى DOM حقيقي، مما يسمح لنا باختبار سلوك المكون في بيئة أكثر واقعية.

اختبار الدعائم مع العرض الثابت

يكون العرض الثابت مفيدًا عندما تحتاج فقط إلى إنشاء مخرجات HTML لمكون دون تثبيته في DOM. فيما يلي مثال لكيفية اختبار دعائم المكونات باستخدام العرض الثابت:

استيراد رد فعل من "رد فعل"؛ استيراد {تقديم} من "الإنزيم"؛ استيراد MyComponent من "./MyComponent"؛ وصف('MyComponent', () => { it('يجب تقديم الدعائم الصحيحة باستخدام العرض الثابت', () => { constprops = { title: 'عنوان الاختبار'، الوصف: 'وصف الاختبار' }; const Wrapper = render(<MyComponent {...props} />); توقع(wrapper.find('h1').text()).toBe('عنوان الاختبار'); توقع(wrapper.find('p').text()).toBe('وصف الاختبار'); }); });

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

تطبيقات العالم الحقيقي والمنتجات ذات الصلة

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

خاتمة

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

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

مراجع

  • إير بي إن بي. (اختصار الثاني). الإنزيم - أدوات اختبار جافا سكريبت لـ React. تم الاسترجاع من https://enzymejs.github.io/enzyme/
  • رد فعل. (اختصار الثاني). React - مكتبة جافا سكريبت لبناء واجهات المستخدم. تم الاسترجاع من https://reactjs.org/
  • مزاح. (اختصار الثاني). Jest - اختبار جافا سكريبت المبهج. تم الاسترجاع من https://jestjs.io/
إرسال التحقيق