Mocha और का उपयोग करके एक बुनियादी परीक्षण का निर्माण करना Chai
Mocha और का उपयोग करके एक बुनियादी परीक्षण बनाने के लिए Chai, आप इन चरणों का पालन कर सकते हैं:
1. इंस्टॉल करें Mocha और: अपने Node.js प्रोजेक्ट में इंस्टॉल करने के Chai लिए npm(नोड पैकेज मैनेजर) का उपयोग करें । अपनी प्रोजेक्ट निर्देशिका में निम्न आदेश चलाएँ: Mocha Chai
npm install mocha chai --save-dev
2. एक परीक्षण फ़ाइल बनाएं: उदाहरण के लिए, एक नई फ़ाइल बनाएं test.js
और उपयोग करने के लिए निम्नलिखित घोषणाओं को आयात करें Mocha और Chai:
const chai = require('chai');
const expect = chai.expect;
describe('Example Test Suite',() => {
it('should pass the test',() => {
expect(2 + 2).to.equal(4);
});
});
3. परीक्षण चलाएँ: टर्मिनल खोलें और mocha
परीक्षण निष्पादित करने के लिए कमांड चलाएँ। यदि सब कुछ सुचारू रूप से चलता रहा, तो आप टर्मिनल में प्रदर्शित परिणाम देखेंगे।
यह बुनियादी परीक्षण एक साधारण गणना की जांच करने के लिए Mocha उपयोग करता है। Chai उपरोक्त उदाहरण में, हम जांचते हैं कि 2 + 2
ऑपरेशन का परिणाम बराबर होना चाहिए 4
। यदि परिणाम सही है, तो परीक्षा उत्तीर्ण होगी.
जोड़कर describe
और it
ब्लॉक करके, आप अधिक जटिल परीक्षण बना सकते हैं और अपने स्रोत कोड के विभिन्न भागों की जांच कर सकते हैं।
ध्यान दें कि आप परीक्षण के लिए Chai या द्वारा प्रदान की गई अन्य अभिकथन विधियों का भी उपयोग कर सकते हैं। विशिष्ट उपयोग आपकी पसंद पर निर्भर करता है और आप अपने परीक्षण कोड को कैसे व्यवस्थित करना चाहते हैं। assert
should
फ़ंक्शन परिणामों को सत्यापित करने के लिए दावे और प्रश्नों का उपयोग करना
उपयोग करते समय Mocha और Chai परीक्षण के लिए, आप फ़ंक्शन के परिणामों की जांच करने के लिए दावे और प्रश्नों का उपयोग कर सकते हैं। फ़ंक्शन परिणामों की जांच करने के लिए दावे और प्रश्नों का उपयोग करने के कुछ उदाहरण यहां दिए गए हैं:
1. एक विशिष्ट मान लौटाने वाले फ़ंक्शन के परिणाम की जांच करने के लिए expect
दावे और क्वेरी का उपयोग करें: to.equal
const result = myFunction();
expect(result).to.equal(expectedValue);
2. बूलियन मान लौटाने वाले फ़ंक्शन के परिणाम की जांच करने के लिए 'उम्मीद' दावे और to.be.true
या क्वेरी का उपयोग करें: to.be.false
const result = myFunction();
expect(result).to.be.true; // or expect(result).to.be.false;
to.be.null
3. शून्य या अपरिभाषित मान लौटाने वाले फ़ंक्शन के परिणाम की जांच करने के लिए 'उम्मीद' दावे और या to.be.unDefined क्वेरी का उपयोग करें:
const result = myFunction();
expect(result).to.be.null; // or expect(result).to.be.undefined;
4. किसी सरणी या स्ट्रिंग में कोई मान शामिल है या नहीं, यह जांचने के लिए expect
दावे और क्वेरी का उपयोग करें: to.include
const result = myFunction();
expect(result).to.include(expectedValue);
5. किसी सरणी या स्ट्रिंग की लंबाई जांचने के लिए expect
दावे और क्वेरी का उपयोग करें: to.have.lengthOf
const result = myFunction();
expect(result).to.have.lengthOf(expectedLength);
Mocha ये उदाहरण कथनों और प्रश्नों का उपयोग करने और Chai फ़ंक्शन परिणामों की जांच करने के कई तरीकों में से कुछ हैं। आप अपने प्रोजेक्ट की परीक्षण आवश्यकताओं के आधार पर उपयुक्त अभिकथनों और प्रश्नों को अनुकूलित और उपयोग कर सकते हैं।
सफल और असफल परीक्षण मामले बनाना
Mocha और के साथ परीक्षण मामले लिखते समय Chai, सफल और विफलता दोनों परिदृश्यों को कवर करना महत्वपूर्ण है। यहां सफल और असफल दोनों परिदृश्यों के लिए परीक्षण मामले बनाने के उदाहरण दिए गए हैं:
1. सफल परीक्षण मामला:
describe('myFunction',() => {
it('should return the expected result',() => {
// Arrange
const input = // provide the input for the function
const expected = // define the expected result
// Act
const result = myFunction(input);
// Assert
expect(result).to.equal(expected);
});
});
2. विफलता परीक्षण मामला:
describe('myFunction',() => {
it('should throw an error when invalid input is provided',() => {
// Arrange
const invalidInput = // provide invalid input for the function
// Act and Assert
expect(() => myFunction(invalidInput)).to.throw(Error);
});
});
सफल परीक्षण मामले में, आप फ़ंक्शन के लिए इनपुट और अपेक्षित परिणाम परिभाषित करते हैं। फिर, आप इनपुट के साथ फ़ंक्शन को कॉल करते हैं और दावा करते हैं कि परिणाम अपेक्षित मूल्य से मेल खाता है।
विफलता परीक्षण मामले में, आप फ़ंक्शन को अमान्य इनपुट प्रदान करते हैं और दावा करते हैं कि यह एक त्रुटि उत्पन्न करता है। यह सुनिश्चित करता है कि फ़ंक्शन अमान्य इनपुट या त्रुटि स्थितियों को ठीक से संभालता है।
अपने परीक्षण मामलों में सफल और विफलता दोनों परिदृश्यों को कवर करके, आप यह सुनिश्चित कर सकते हैं कि आपके कोड का पूरी तरह से परीक्षण किया गया है और विभिन्न स्थितियों को उचित रूप से संभाल लिया गया है।