यूनिट टेस्टिंग की मदद से, कोड के छोटे सेक्शन की जांच, ब्राउज़र के बाहर और बाकी एक्सटेंशन से अलग की जा सकती है. उदाहरण के लिए, इकाई टेस्ट को लिखकर यह पक्का किया जा सकता है कि कि एक हेल्पर तरीका स्टोरेज के लिए सही तरीके से वैल्यू लिखता है.
एक्सटेंशन एपीआई का इस्तेमाल किए बिना लिखे गए कोड की जांच, सामान्य तरीके से की जा सकती है. इसके लिए, Jest जैसे फ़्रेमवर्क का इस्तेमाल करें. इस तरह से कोड की जांच आसान बनाने के लिए, डिपेंडेंसी इंजेक्शन जैसी तकनीकों का इस्तेमाल करें. इससे, निचले लेवल पर लागू करने के दौरान, Chrome नेमस्पेस पर डिपेंडेंसी हटाने में मदद मिल सकती है.
अगर आपको ऐसे कोड की जांच करनी है जिसमें एक्सटेंशन एपीआई शामिल हैं, तो मॉक का इस्तेमाल करें.
उदाहरण: Jest के साथ मॉक का इस्तेमाल करना
कोई ऐसी jest.config.js
फ़ाइल बनाएं जो सभी जांच से पहले चलने वाली सेटअप फ़ाइल के बारे में जानकारी दे:
jest.config.js:
module.exports = {
setupFiles: ['<rootDir>/mock-extension-apis.js']
};
mock-extension-apis.js
में, उन खास फ़ंक्शन के लिए लागू करने की जानकारी जोड़ें जिन्हें आपको कॉल करना है:
mock-extension-apis.js:
global.chrome = {
tabs: {
query: async () => { throw new Error("Unimplemented.") };
}
};
इसके बाद, किसी टेस्ट में रिटर्न की गई वैल्यू को मॉक करने के लिए, jest.spy
का इस्तेमाल करें:
test("getActiveTabId returns active tab ID", async () => {
jest.spyOn(chrome.tabs, "query").mockResolvedValue([{
id: 3,
active: true,
currentWindow: true
}]);
expect(await getActiveTabId()).toBe(3);
});
अगले चरण
हमारा सुझाव है कि आप एंड-टू-एंड टेस्ट जोड़ें, ताकि यह पक्का किया जा सके कि आपका एक्सटेंशन उम्मीद के मुताबिक काम कर रहा है. ट्यूटोरियल देखने के लिए, Puppeteer की मदद से Chrome एक्सटेंशन की जांच करना लेख पढ़ें.