چگونه می توان اجزای سازنده را با آنزیم آزمایش کرد؟

Oct 21, 2025

پیام بگذارید

هلن کیم
هلن کیم
متخصص تغذیه و مربی محصول. من به مصرف کنندگان در مورد فواید تغذیه مبتنی بر گیاه ، به ویژه اینکه عصاره های ما از سلامتی کلی و زندگی سالم پشتیبانی می کنند ، آموزش می دهم.

آزمایش اجزای سازنده یک جنبه حیاتی برای اطمینان از قابلیت اطمینان و عملکرد اجزای React است. به عنوان یک تامین کننده آنزیم، اهمیت ارائه ابزارها و تکنیک های موثر برای آزمایش برنامه های React را درک می کنم. در این پست وبلاگ، بینش‌های ارزشمندی را در مورد نحوه آزمایش اجزای سازنده با Enzyme، یک ابزار محبوب تست جاوا اسکریپت برای React، به اشتراک خواهم گذاشت.

درک آنزیم

Enzyme یک ابزار تست جاوا اسکریپت است که توسط Airbnb توسعه یافته است. مجموعه ای از ابزارهای آزمایشی را ارائه می دهد که آزمایش اجزای React را آسان تر می کند. Enzyme به شما این امکان را می دهد که خروجی کامپوننت های React خود را دستکاری، پیمایش و پرس و جو کنید به روشی مشابه jQuery. از حالت های مختلف رندر مانند رندر کم عمق، رندر کامل DOM و رندر استاتیک پشتیبانی می کند که به شما در تست اجزای خود انعطاف پذیری می دهد.

راه اندازی محیط تست

قبل از شروع آزمایش اجزای سازنده با Enzyme، باید محیط آزمایش خود را تنظیم کنید. در اینجا مراحلی برای شروع آمده است:

  1. آنزیم و آداپتورهای آن را نصب کنید: می توانید Enzyme و آداپتورهای آن را با استفاده از npm یا yarn نصب کنید. به عنوان مثال، اگر از React 16 استفاده می کنید، باید نصب کنیدآنزیموآنزیم-آداپتور-واکنش-16.
npm نصب --save-dev enzyme enzyme-adapter-react-16
  1. آداپتور را پیکربندی کنید: در فایل تنظیم آزمایشی خود، آداپتور Enzyme را پیکربندی کنید. در اینجا یک مثال است:
واردات آنزیم از "آنزیم". واردات آداپتور از 'enzyme-adapter-react-16'; Enzyme.configure({ adapter: new Adapter() });

تست قطعات کامپوننت با رندر کم عمق

رندر کم عمق تکنیکی است که به شما امکان می دهد یک کامپوننت را با عمق یک سطح بدون رندر کردن هیچ یک از فرزندان آن رندر کنید. این برای آزمایش اجزای جداگانه به صورت مجزا مفید است. در اینجا مثالی از نحوه آزمایش اجزای سازنده با استفاده از رندر سطحی آورده شده است:

import React from'react'; import { shallow } از 'enzyme'; وارد کردن MyComponent از './MyComponent'; describe('MyComponent', () => { it('should render with correct props', () => { const props = { title: 'Test Title', description: 'Test Description' }; const wrapper = shallow(<MyComponent {...props} />); expect(wrapper.prop('Title));' expect(wrapper.prop('description')).toBe('Test Description'); })؛ })؛

در این مثال، ما با ابزارهایی که می‌خواهیم به آن ارسال کنیم، یک شی ایجاد می‌کنیمMyComponent. سپس استفاده می کنیمکم عمقبرای رندر کردن کامپوننت با این لوازم. در نهایت ازپشتیبانیروشی برای دسترسی به لوازم جانبی و اظهار نظر در مورد مقادیر آنها.

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

تست انواع پایه

انواع Prop راهی برای مستندسازی و اجرای انواع props است که یک جزء انتظار دارد. شما می توانید از Enzyme برای آزمایش اینکه یک جزء به درستی انواع prop را کنترل می کند استفاده کنید. در اینجا یک مثال است:

import React from'react'; وارد کردن PropType از 'prop-types'; import { shallow } از 'enzyme'; const MyComponent = ({ عنوان }) => ( <div>{title}</div> ); MyComponent.propTypes = { title: PropTypes.string.isRequired }; describe('MyComponent', () => { it('باید یک هشدار برای از دست دادن پایه پرتاب کند', () => { console.error = jest.fn(); shallow(<MyComponent />); expect(console.error).toHaveBeenCalled(); }); });

در این مثال، ما ازis.fn()برای جاسوسیکنسول.خطاروش سپس کامپوننت را بدون عبور از موارد مورد نیاز رندر می کنیمعنوانپشتیبانی اگر اعتبار سنجی نوع prop ناموفق باشد، یک هشدار به کنسول وارد می شود و اگرکنسول.خطاروش نامیده شده است.

تست لوازم با رندر کامل DOM

رندر کامل DOM زمانی مفید است که باید تعامل بین یک مؤلفه و فرزندان آن را آزمایش کنید یا زمانی که باید رفتار مؤلفه را در یک محیط واقعی تر آزمایش کنید. در اینجا مثالی از نحوه آزمایش اجزای سازنده با استفاده از رندر کامل DOM آورده شده است:

import React from'react'; import { mount } از 'enzyme'; وارد کردن MyComponent از './MyComponent'; describe('MyComponent', () => { it('should render with props right using full DOM rendering', () => { const props = { title: 'Test Title', description: 'Test Description' }; const wrapper = mount(<MyComponent {...props} />);pro expect('itleT');pro expect('itleT'); expect(wrapper.prop('description')).toBe('Test Description'); })؛ })؛

در این مثال، ما ازسوار کردنروش به جایکم عمق. راسوار کردنمتد کامپوننت و فرزندان آن را به یک DOM واقعی تبدیل می کند، که به ما امکان می دهد رفتار کامپوننت را در یک محیط واقعی تر آزمایش کنیم.

تست لوازم با رندر استاتیک

رندر استاتیک زمانی مفید است که شما فقط نیاز به تولید خروجی HTML یک جزء بدون نصب آن در DOM دارید. در اینجا مثالی از نحوه آزمایش اجزای سازنده با استفاده از رندر استاتیک آورده شده است:

import React from'react'; import { render } از 'enzyme'; وارد کردن MyComponent از './MyComponent'; describe('MyComponent', () => { it('should render with the props correct using static rendering', () => { const props = { title: 'Test Title', description: 'Test Description' }; const wrapper = render(<MyComponent {...props} />); expect('text('t)Best'). عنوان') expect(wrapper.find('p').text()).toBe('Test Description'); })؛ })؛

در این مثال، ما ازارائه دهدروشی برای تولید خروجی HTML جزء. سپس می‌توانیم از انتخابگرهای jQuery مانند برای پرس و جو در خروجی و اظهارنظر در مورد props استفاده کنیم.

برنامه های کاربردی دنیای واقعی و محصولات مرتبط

در دنیای واقعی، آزمایش اجزای سازنده برای ساخت برنامه‌های React با کیفیت ضروری است. در شرکت ما، ما نه تنها آنزیم را ارائه می دهیم، بلکه طیف وسیعی از محصولات مرتبط را نیز ارائه می دهیم که می تواند روند توسعه و آزمایش شما را بهبود بخشد. مثلا داریمنیکوتین آمید مونونوکلئوتیدکه دارای فواید بالقوه ای برای سلامتی است و می تواند در کاربردهای مختلف مورد استفاده قرار گیرد. ما نیز ارائه می دهیمکارخانه تامین پودر آووکادو خشک ارگانیک، یک ماده طبیعی و مغذی است. و برای کاربردهای صنعتی داریمقیمت کارخانه روغن سقز/روغن سقز با کیفیت بالا/روغن سقز معدنی، که به طور گسترده در صنعت تولید استفاده می شود.

نتیجه گیری

آزمایش اجزای سازنده با Enzyme یک مهارت ضروری برای توسعه دهندگان React است. با استفاده از رندر کم عمق، رندر کامل DOM و رندر استاتیک، می توانید اجزای خود را در سناریوهای مختلف آزمایش کنید و مطمئن شوید که مطابق انتظار کار می کنند. چه یک مبتدی یا یک توسعه دهنده با تجربه باشید، تسلط بر این تکنیک ها به شما کمک می کند تا برنامه های React قابل اعتمادتر و قابل نگهداری بیشتری بسازید.

اگر علاقه مند به خرید آنزیم یا هر یک از محصولات دیگر ما هستید، لطفاً برای بحث در مورد خرید با ما تماس بگیرید. ما متعهد به ارائه محصولات با کیفیت بالا و خدمات عالی به مشتریان هستیم.

مراجع

  • Airbnb. (دوم). Enzyme - ابزارهای تست جاوا اسکریپت برای React. برگرفته از https://enzymejs.github.io/enzyme/
  • واکنش نشان دهید. (دوم). React - یک کتابخانه جاوا اسکریپت برای ساخت رابط کاربری. برگرفته از https://reactjs.org/
  • شوخی (دوم). Jest - تست لذت بخش جاوا اسکریپت. برگرفته از https://jestjs.io/
ارسال درخواست