"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > साइप्रस में डेटा-संचालित परीक्षण: एक व्यापक मार्गदर्शिका

साइप्रस में डेटा-संचालित परीक्षण: एक व्यापक मार्गदर्शिका

2024-07-30 को प्रकाशित
ब्राउज़ करें:110

Data-Driven Testing in Cypress: A Comprehensive Guide

परिचय

डेटा-संचालित परीक्षण एक शक्तिशाली दृष्टिकोण है जो आपको डेटा के कई सेटों के साथ एक ही परीक्षण चलाने की अनुमति देता है। यह विधि विभिन्न इनपुट संयोजनों के साथ एप्लिकेशन व्यवहार को सत्यापित करने, विभिन्न परिदृश्यों की संपूर्ण कवरेज सुनिश्चित करने के लिए विशेष रूप से उपयोगी है। इस पोस्ट में, हम यह पता लगाएंगे कि कुशल और रखरखाव योग्य परीक्षण बनाने के लिए इसकी क्षमताओं का लाभ उठाते हुए, साइप्रस में डेटा-संचालित परीक्षण कैसे लागू किया जाए।

डेटा-संचालित परीक्षण क्या है?

डेटा-संचालित परीक्षण में परीक्षण तर्क को परीक्षण डेटा से अलग करना शामिल है, जिससे परीक्षणों को विभिन्न इनपुट के साथ कई बार निष्पादित किया जा सकता है। यह दृष्टिकोण किनारे के मामलों की पहचान करने, व्यावसायिक तर्क को मान्य करने और यह सुनिश्चित करने में मदद करता है कि एप्लिकेशन डेटा की एक विस्तृत श्रृंखला को सही ढंग से संभालता है।

डेटा-संचालित परीक्षण के लाभ

  • बढ़ी हुई परीक्षण कवरेज: यह सुनिश्चित करता है कि आपके एप्लिकेशन का विभिन्न इनपुट और परिदृश्यों के साथ परीक्षण किया गया है।
  • बेहतर रखरखाव: परीक्षण तर्क से डेटा को अलग करके परीक्षण रखरखाव को सरल बनाता है।
  • दक्षता: विभिन्न डेटा सेटों के साथ एक ही परीक्षण तर्क का पुन: उपयोग करके कोड दोहराव को कम करता है।
  • स्केलेबिलिटी: केवल नए डेटा सेट जोड़कर नए परीक्षण मामलों को जोड़ना आसान बनाता है।

साइप्रस में डेटा-संचालित परीक्षण लागू करना

साइप्रेस डेटा-संचालित परीक्षण को लागू करने के कई तरीके प्रदान करता है, जिसमें सरणियों, फिक्स्चर और बाहरी पुस्तकालयों का उपयोग शामिल है। आइए उदाहरणों के साथ इन तरीकों का पता लगाएं।

1. सारणियों का उपयोग करना
आप परीक्षण डेटा के विभिन्न सेटों को संग्रहीत करने और forEach विधि का उपयोग करके उन पर पुनरावृति करने के लिए सरणियों का उपयोग कर सकते हैं।

उदाहरण:

const testData = [
    { username: 'user1', password: 'password1' },
    { username: 'user2', password: 'password2' },
    { username: 'user3', password: 'password3' }
];

describe('Data-Driven Testing with Arrays', () => {
    testData.forEach((data) => {
        it(`should log in successfully with username: ${data.username}`, () => {
            cy.visit('/login');
            cy.get('input[name="username"]').type(data.username);
            cy.get('input[name="password"]').type(data.password);
            cy.get('button[type="submit"]').click();
            cy.url().should('include', '/dashboard');
        });
    });
});

2. फिक्स्चर का उपयोग करना
फिक्स्चर बाहरी फ़ाइलें हैं जो परीक्षण डेटा को JSON प्रारूप में संग्रहीत करती हैं। साइप्रस आपको फिक्सचर फ़ाइलें लोड करने और अपने परीक्षणों में डेटा का उपयोग करने की अनुमति देता है।

उदाहरण:

  1. एक फिक्सचर फ़ाइल बनाएं cypress/fixtures/users.json:
[
    { "username": "user1", "password": "password1" },
    { "username": "user2", "password": "password2" },
    { "username": "user3", "password": "password3" }
]
  1. अपने परीक्षण में फिक्स्चर डेटा लोड करें और उसका उपयोग करें:
describe('Data-Driven Testing with Fixtures', () => {
    before(() => {
        cy.fixture('users').then(function (data) {
            this.users = data;
        });
    });

    it('should log in successfully with multiple users', function () {
        this.users.forEach((user) => {
            cy.visit('/login');
            cy.get('input[name="username"]').type(user.username);
            cy.get('input[name="password"]').type(user.password);
            cy.get('button[type="submit"]').click();
            cy.url().should('include', '/dashboard');
            cy.visit('/logout'); // Log out after each login
        });
    });
});

3. बाहरी पुस्तकालयों का उपयोग करना
अधिक जटिल डेटा-संचालित परीक्षण परिदृश्यों के लिए, आप साइप्रस-प्लगइन-स्नैपशॉट या साइप्रस-डेटा-संचालित जैसी बाहरी लाइब्रेरी का उपयोग कर सकते हैं।

सरू-डेटा-संचालित उदाहरण:

  1. लाइब्रेरी स्थापित करें:
npm install cypress-data-driven --save-dev
  1. अपने परीक्षण में लाइब्रेरी का उपयोग करें:
import dataDriven from 'cypress-data-driven';

const testData = [
    { username: 'user1', password: 'password1', expectedUrl: '/dashboard1' },
    { username: 'user2', password: 'password2', expectedUrl: '/dashboard2' },
    { username: 'user3', password: 'password3', expectedUrl: '/dashboard3' }
];

describe('Data-Driven Testing with External Library', () => {
    dataDriven(testData).forEach((data) => {
        it(`should log in successfully with username: ${data.username}`, () => {
            cy.visit('/login');
            cy.get('input[name="username"]').type(data.username);
            cy.get('input[name="password"]').type(data.password);
            cy.get('button[type="submit"]').click();
            cy.url().should('include', data.expectedUrl);
        });
    });
});

डेटा-संचालित परीक्षण के लिए सर्वोत्तम अभ्यास

  • अर्थपूर्ण डेटा का उपयोग करें: सुनिश्चित करें कि आपका परीक्षण डेटा किनारे के मामलों और अमान्य इनपुट सहित सभी संभावित परिदृश्यों को कवर करता है।
  • डेटा को अलग रखें: रखरखाव में सुधार के लिए परीक्षण डेटा को परीक्षण तर्क से अलग संग्रहीत करें।
  • डेटा निर्माण स्वचालित करें: परीक्षण डेटा के बड़े सेट स्वचालित रूप से उत्पन्न करने के लिए स्क्रिप्ट या टूल का उपयोग करें।
  • परीक्षण डेटा मान्य करें: यह सुनिश्चित करने के लिए कि यह प्रासंगिक और सटीक बना रहे, अपने परीक्षण डेटा की नियमित रूप से समीक्षा और सत्यापन करें।

निष्कर्ष

डेटा-संचालित परीक्षण एक मूल्यवान दृष्टिकोण है जो परीक्षण कवरेज, रखरखाव और दक्षता को बढ़ाता है। साइप्रस की क्षमताओं का लाभ उठाकर और सरणियों, फिक्स्चर, या बाहरी पुस्तकालयों का उपयोग करके, आप मजबूत डेटा-संचालित परीक्षण लागू कर सकते हैं जो सुनिश्चित करते हैं कि आपका एप्लिकेशन इनपुट की एक विस्तृत श्रृंखला को सही ढंग से संभालता है। सर्वोत्तम प्रथाओं का पालन करके, आप अपने परीक्षणों की विश्वसनीयता और प्रभावशीलता में और सुधार कर सकते हैं।

खुश परीक्षण!

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/asvani25/data-driven-testing-in-cypress-a-compreciive-guide-25ai?1 यदि कोई उल्लंघन है, तो हटाने के लिए कृपया [email protected] पर संपर्क करें यह
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3