इस प्रोजेक्ट के बारे में
Enzyme React के लिए एक JavaScript परीक्षण उपयोगिता है जो React घटकों के आउटपुट के परीक्षण को आसान बनाती है। यह डेवलपर्स को रेंडर किए गए आउटपुट के आधार पर घटकों को manipulate, traverse और कुछ हद तक runtime का अनुकरण करने की सुविधा देती है। इसका API jQuery के DOM manipulation और traversal API की नकल करके सहज और लचीला बनाया गया है।
मुख्य क्षमताएँ:
- Shallow rendering: किसी घटक को एक स्तर गहरा रेंडर करें और बिना DOM की आवश्यकता के उसके रिटर्न के बारे में assert करें।
- Full DOM rendering (mount): घटकों को वास्तविक DOM वातावरण में रेंडर करें, जिसमें lifecycle methods, props परिवर्तन और event simulation समर्थित हैं।
- Static rendering: घटकों को static HTML markup में रेंडर करें और परिणामी संरचना का विश्लेषण करें।
Adapters: Enzyme को उपयोग में लिए जा रहे React संस्करण से मेल खाने वाले adapter की आवश्यकता होती है। आधिकारिक adapters React 16.x, 15.x, 0.14.x और 0.13.x को कवर करते हैं। Preact और Inferno के लिए third-party adapters उपलब्ध हैं।
Test runner compatibility: Enzyme test runners और assertion libraries के बारे में कोई राय नहीं रखता। दस्तावेज़ीकरण के उदाहरण Mocha और Chai का उपयोग करते हैं, और Jest, Jasmine, should.js तथा expect के लिए companion matcher libraries मौजूद हैं।
React Hooks: Enzyme React hooks को समर्थन देता है, लेकिन shallow rendering में upstream React shallow renderer की समस्याओं के कारण कुछ सीमाएँ हैं (useEffect/useLayoutEffect कॉल नहीं होते, useCallback memoized नहीं रहता)। React 16.8+ के साथ mount के लिए, Enzyme simulate, setProps, setContext और invoke जैसी APIs को ReactTestUtils.act() में wrap करता है।
Installation npm के माध्यम से होती है, enzyme और उपयुक्त adapter स्थापित करके। कॉन्फ़िगरेशन top-level configure() API का उपयोग करके किया जाता है।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.