Ako testovať rekvizity komponentov pomocou Enzyme?

Oct 21, 2025

Zanechajte správu

Helen Kim
Helen Kim
Certifikovaný odborník na výživu a produkt. Vzdelávam spotrebiteľov o výhodách výživy rastlín, najmä o tom, ako naše extrakty podporujú celkové wellness a zdravý život.

Testovanie podpier komponentov je kľúčovým aspektom zabezpečenia spoľahlivosti a funkčnosti komponentov React. Ako dodávateľ Enzyme chápem dôležitosť poskytovania efektívnych nástrojov a techník na testovanie aplikácií React. V tomto blogovom príspevku sa podelím o cenné poznatky o tom, ako testovať rekvizity komponentov s Enzyme, populárnou pomôckou na testovanie JavaScriptu pre React.

Pochopenie enzýmu

Enzyme je nástroj na testovanie JavaScriptu vyvinutý spoločnosťou Airbnb. Poskytuje sadu testovacích nástrojov, ktoré uľahčujú testovanie komponentov React. Enzyme vám umožňuje manipulovať, prechádzať a dotazovať sa na výstup vašich komponentov React spôsobom, ktorý je podobný jQuery. Podporuje rôzne režimy vykresľovania, ako je plytké vykresľovanie, úplné vykresľovanie DOM a statické vykresľovanie, čo vám dáva flexibilitu pri testovaní vašich komponentov.

Nastavenie testovacieho prostredia

Skôr ako začnete testovať rekvizity komponentov pomocou Enzyme, musíte nastaviť testovacie prostredie. Tu sú kroky, ako začať:

  1. Nainštalujte Enzyme a jeho adaptéry: Enzyme a jeho adaptéry môžete nainštalovať pomocou npm alebo priadze. Napríklad, ak používate React 16, budete si musieť nainštalovaťenzýmaenzým-adaptér-reagovať-16.
npm install --save-dev enzyme enzyme-adapter-react-16
  1. Nakonfigurujte adaptér: Vo svojom testovacom inštalačnom súbore nakonfigurujte adaptér Enzyme. Tu je príklad:
importovať enzým z „enzýmu“; importovať adaptér z 'enzyme-adapter-react-16'; Enzyme.configure({ adaptér: new Adapter() });

Testovanie rekvizít komponentov s plytkým vykreslením

Plytké vykresľovanie je technika, ktorá vám umožňuje vykresliť komponent „hĺbkovo o jednu úroveň“ bez vykresľovania niektorého z jeho potomkov. To je užitočné pri testovaní jednotlivých komponentov v izolácii. Tu je príklad, ako testovať rekvizity komponentov pomocou plytkého vykresľovania:

import React from'react'; import { plytké } z 'enzýmu'; importovať MyComponent z './MyComponent'; description('MyComponent', () => { it('should render with the right props', () => { const props = { title: 'Test Title', description: 'Test Description' }; const wrapper = plytký(<MyComponent {...props} />); expect(wrapper.prop('title')).'ToBe); očakávať(wrapper.prop('popis')).toBe('Popis testu'); }); });

V tomto príklade vytvárame objekt s rekvizitami, ktoré chceme odovzdaťMyComponent. Potom používameplytkéna vykreslenie komponentu s týmito rekvizitami. Nakoniec použijemerekvizitaspôsob prístupu k rekvizitám a tvrdenia o ich hodnotách.

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

Testovanie typov rekvizít

Typy rekvizít predstavujú spôsob, ako zdokumentovať a presadiť typy rekvizít, ktoré komponent očakáva. Enzyme môžete použiť na otestovanie, či komponent správne spracováva typy rekvizít. Tu je príklad:

import React from'react'; importovať PropTypes z 'prop-types'; import { plytké } z 'enzýmu'; const MyComponent = ({ title }) => ( <div>{title}</div> ); MyComponent.propTypes = { title: PropTypes.string.isRequired }; description('MyComponent', () => { it('malo by vyvolať upozornenie na chýbajúcu podperu', () => { console.error = jest.fn(); plytké (<MyComponent />); expect(console.error).toHaveBeenCalled(); }); });

V tomto príklade používameis.fn()špehovaťkonzola.chybametóda. Potom komponent vyrenderujeme bez toho, aby sme odovzdali požadovanétitulrekvizita. Ak overenie typu podpery zlyhá, do konzoly sa zaznamená varovanie a náš test prejde, ak jekonzola.chybabola zavolaná metóda.

Testovanie rekvizít s úplným vykresľovaním DOM

Úplné vykresľovanie DOM je užitočné, keď potrebujete otestovať interakciu medzi komponentom a jeho potomkami alebo keď potrebujete otestovať správanie komponentu v realistickejšom prostredí. Tu je príklad, ako testovať rekvizity komponentov pomocou úplného vykresľovania DOM:

import React from'react'; import { mount } z 'enzýmu'; importovať MyComponent z './MyComponent'; description('MyComponent', () => { it('malo by sa vykresliť so správnymi rekvizitami pomocou úplného vykresľovania DOM', () => { const props = { title: 'Testovací názov', popis: 'Popis testu' }; const wrapper = mount(<MyComponent {...props} />); expect(wrapper.prop('Ttitle')). očakávať(wrapper.prop('popis')).toBe('Popis testu'); }); });

V tomto príklade používamenamontovaťmetóda namiesto tohoplytké. Thenamontovaťmetóda vykresľuje komponent a jeho deti do skutočného DOM, čo nám umožňuje testovať správanie komponentu v realistickejšom prostredí.

Testovanie rekvizít so statickým vykresľovaním

Statické vykresľovanie je užitočné, keď potrebujete vygenerovať HTML výstup komponentu bez toho, aby ste ho pripojili do DOM. Tu je príklad, ako testovať rekvizity komponentov pomocou statického vykresľovania:

import React from'react'; import { render } z 'enzýmu'; importovať MyComponent z './MyComponent'; description('MyComponent', () => { it('malo by sa vykresliť so správnymi rekvizitami pomocou statického vykresľovania', () => { const props = { title: 'Test Title', description: 'Test Description' }; const wrapper = render(<MyComponent {...props} />); expect(wrapper.find('HT1');'text'). očakávať(wrapper.find('p').text()).toBe('Popis testu'); }); });

V tomto príklade používamevykresliťmetóda na generovanie HTML výstupu komponentu. Potom môžeme použiť selektory podobné jQuery na dopytovanie výstupu a vytváranie tvrdení o rekvizitách.

Aplikácie v reálnom svete a súvisiace produkty

V reálnom svete je testovanie rekvizít komponentov nevyhnutné pre vytváranie vysokokvalitných aplikácií React. V našej spoločnosti neposkytujeme len Enzým, ale ponúkame aj rad súvisiacich produktov, ktoré môžu zlepšiť váš vývojový a testovací proces. Napríklad mámeMononukleotid nikotínamidu, ktorý má potenciálne prínosy pre zdravie a možno ho použiť v rôznych aplikáciách. Ponúkame tiežOrganický sušený avokádový prášok z továrne, prírodná a výživná zložka. A pre priemyselné aplikácie mámeVysoko kvalitný terpentínový olej/terpentínový olej Výrobná cena/minerálny terpentínový olej, ktorý je široko používaný vo výrobnom priemysle.

Záver

Testovanie rekvizít komponentov pomocou Enzyme je pre vývojárov Reactu nevyhnutnou zručnosťou. Použitím plytkého vykresľovania, úplného vykresľovania DOM a statického vykresľovania môžete otestovať svoje komponenty v rôznych scenároch a uistiť sa, že fungujú podľa očakávania. Či už ste začiatočník alebo skúsený vývojár, zvládnutie týchto techník vám pomôže vytvoriť spoľahlivejšie a udržiavateľné aplikácie React.

Ak máte záujem o kúpu Enzýmu alebo ktoréhokoľvek z našich ďalších produktov, neváhajte nás kontaktovať kvôli diskusii o obstarávaní. Zaviazali sme sa poskytovať vysokokvalitné produkty a vynikajúce služby zákazníkom.

Referencie

  • Airbnb. (nd). Enzyme - JavaScriptové testovacie nástroje pre React. Prevzaté z https://enzymejs.github.io/enzyme/
  • Reagovať. (nd). React – JavaScriptová knižnica na vytváranie používateľských rozhraní. Prevzaté z https://reactjs.org/
  • Jest. (nd). Jest – príjemné testovanie JavaScriptu. Prevzaté z https://jestjs.io/
Zaslať požiadavku