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

साइप्रस में अपलोड और डाउनलोड को कैसे सत्यापित करें

2024-11-08 को प्रकाशित
ब्राउज़ करें:254

How to Validate Upload and Download in Cypress

परिचय

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

इस गाइड के अंत तक, आप जान जाएंगे कि कैसे:

  • साइप्रस का उपयोग करके फ़ाइलें अपलोड करें।
  • सफल फ़ाइल अपलोड को मान्य करें।
  • फ़ाइलें डाउनलोड करें और साइप्रस में उनकी सामग्री को मान्य करें।

आवश्यक शर्तें

उदाहरणों का पालन करने के लिए, सुनिश्चित करें कि आपके पास साइप्रस स्थापित और सेटअप है। यदि आप साइप्रस v13.6.2 का उपयोग कर रहे हैं, तो यह इस पोस्ट में दिखाए गए तरीकों के साथ संगत है।

साइप्रस में फ़ाइल अपलोड

साइप्रस में फ़ाइलें अपलोड करने के लिए, हम साइप्रस-फ़ाइल-अपलोड प्लगइन का उपयोग करेंगे, जो आपके परीक्षणों के दौरान फ़ाइल अपलोड क्रियाओं को अनुकरण करने का एक आसान तरीका प्रदान करता है।
चरण 1: साइप्रस-फ़ाइल-अपलोड प्लगइन स्थापित करें
साइप्रस में फ़ाइल अपलोड को संभालने के लिए, आपको सबसे पहले साइप्रस-फ़ाइल-अपलोड पैकेज स्थापित करना होगा।

npm install --save-dev cypress-file-upload

इसके बाद, इसे साइप्रस समर्थन फ़ोल्डर के अंदर अपनी कमांड.जेएस फ़ाइल में आयात करें:

import 'cypress-file-upload';

चरण 2: फ़ोल्डर संरचना
सुनिश्चित करें कि आपके प्रोजेक्ट में परीक्षण फ़ाइलों को संग्रहीत करने और परीक्षण के दौरान उन्हें अपलोड करने के लिए निम्नलिखित फ़ोल्डर संरचना है:

cypress/
    fixtures/
        exampleFile.pdf  // Test file for uploading
    e2e/
        fileUploadTests.cy.js  // Test file to upload and validate

चरण 3: एक फ़ाइल अपलोड करना
एक बार जब आप प्लगइन इंस्टॉल कर लेते हैं, तो आप फिक्स्चर फ़ोल्डर से फ़ाइल अपलोड करने के लिए अटैचफ़ाइल कमांड का उपयोग कर सकते हैं।

यहां बताया गया है कि आप फ़ाइल कैसे अपलोड कर सकते हैं:

describe('File Upload Test in Cypress', () => {
  it('should upload a file successfully', () => {
    // Visit the page with a file upload input
    cy.visit('/upload');

    // Select the file input element and upload a file from the fixtures folder
    cy.get('input[type="file"]').attachFile('exampleFile.pdf');

    // Validate that the file was uploaded (depends on your app's specific response)
    cy.get('.file-name').should('contain', 'exampleFile.pdf');
  });
});

इस परीक्षण में:

  • हम उस पृष्ठ पर जाते हैं जहां फ़ाइल इनपुट मौजूद है।
  • हम फिक्स्चर फ़ोल्डर से फ़ाइल अपलोड को अनुकरण करने के लिए attachmentFile() का उपयोग करते हैं।
  • अभिकथन यह जांचता है कि अपलोड की गई फ़ाइल का नाम पृष्ठ पर सही ढंग से दिखाई देता है या नहीं।

फ़ाइल अपलोड को मान्य करना

फ़ाइल अपलोड को मान्य करना यह जांचने जितना आसान हो सकता है कि अपलोड के बाद फ़ाइल का नाम या पथ वेबपेज पर दिखाई देता है या नहीं। हालाँकि, जटिल परिदृश्यों (उदाहरण के लिए, फ़ाइल सामग्री या आकार को सत्यापित करना) के लिए, आपको सर्वर-साइड जाँच या स्टब्स की आवश्यकता हो सकती है।

उदाहरण: अतिरिक्त डेटा के साथ फ़ाइल अपलोड को मान्य करें

describe('File Upload and Validation', () => {
  it('should upload a file and validate metadata', () => {
    cy.visit('/upload');

    cy.get('input[type="file"]').attachFile('exampleFile.pdf');

    // Assert that the file metadata like size is displayed correctly
    cy.get('.file-size').should('contain', 'Size: 1MB');
  });
});

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

चरण 1: साइप्रस-डाउनलोडफ़ाइल स्थापित करना
साइप्रस में फ़ाइल डाउनलोड को सत्यापित करने के लिए, हम साइप्रस-डाउनलोडफ़ाइल प्लगइन का उपयोग कर सकते हैं।

इसे npm के माध्यम से स्थापित करें:

npm install --save-dev cypress-downloadfile

इसके बाद, प्लगइन को अपनी Commands.js फ़ाइल में जोड़ें:

require('cypress-downloadfile/lib/downloadFileCommand');

चरण 2: फ़ाइलें डाउनलोड करना और मान्य करना
अब आप एक परीक्षण लिख सकते हैं जो एक फ़ाइल को डाउनलोड करता है और उसकी सामग्री को सत्यापित करता है।

उदाहरण: एक फ़ाइल डाउनलोड करना

describe('File Download Test in Cypress', () => {
  it('should download a file and validate its content', () => {
    cy.visit('/download');

    // Download the file and save it to a custom downloads folder
    cy.downloadFile('https://example.com/sample.pdf', 'cypress/downloads', 'sample.pdf');

    // Validate that the file exists in the specified location
    cy.readFile('cypress/downloads/sample.pdf').should('exist');
  });
});

इस परीक्षण में:

  • हम किसी URL से फ़ाइल डाउनलोड करने और उसे cypress/downloads फ़ोल्डर में संग्रहीत करने के लिए cy.downloadFile() का उपयोग करते हैं।
  • डाउनलोड के बाद, हम cy.readFile() का उपयोग करके सत्यापित करते हैं कि फ़ाइल मौजूद है।

चरण 3: फ़ाइल सामग्री को मान्य करना
डाउनलोड सफल रहा यह सुनिश्चित करने के लिए आप डाउनलोड की गई फ़ाइल की सामग्री को सत्यापित करना चाह सकते हैं। टेक्स्ट-आधारित फ़ाइलों (उदाहरण के लिए, .txt, .csv) के लिए, साइप्रस की cy.readFile() का उपयोग फ़ाइल की सामग्री पर जोर देने के लिए किया जा सकता है।

उदाहरण: डाउनलोड की गई फ़ाइल सामग्री को मान्य करें

describe('Validate Downloaded File Content', () => {
  it('should download and check the content of a text file', () => {
    cy.visit('/download');

    // Download the text file
    cy.downloadFile('https://example.com/sample.txt', 'cypress/downloads', 'sample.txt');

    // Read the file and assert its content
    cy.readFile('cypress/downloads/sample.txt').then((fileContent) => {
      expect(fileContent).to.contain('This is a sample text file');
    });
  });
});

यह परीक्षण एक .txt फ़ाइल डाउनलोड करता है और जाँचता है कि इसमें अपेक्षित पाठ है।

साइप्रस में फ़ाइल अपलोड और डाउनलोड के लिए सर्वोत्तम अभ्यास

  1. अपलोड के लिए फिक्स्चर का उपयोग करें: अपने परीक्षण डेटा को व्यवस्थित और पहुंच योग्य रखने के लिए हमेशा फिक्स्चर फ़ोल्डर में अपलोड करने के लिए फ़ाइलों को संग्रहीत करें।
  2. डाउनलोड फ़ोल्डर साफ़ करें: नए परीक्षण शुरू करने से पहले, पिछले टेस्ट रन की बची हुई फ़ाइलों के साथ समस्याओं से बचने के लिए डाउनलोड फ़ोल्डर साफ़ करें।
  3. सर्वर प्रतिक्रिया सत्यापित करें: फ़ाइल अपलोड के लिए, फ़ाइल ठीक से संसाधित है यह सुनिश्चित करने के लिए हमेशा यूआई दावे के अलावा सर्वर-साइड प्रतिक्रियाओं को सत्यापित करें।
  4. डाउनलोड के लिए अस्थायी निर्देशिकाओं का उपयोग करें: अपने प्रोजेक्ट संरचना को अव्यवस्थित होने से बचाने के लिए डाउनलोड की गई फ़ाइलों को अस्थायी निर्देशिकाओं (साइप्रस/डाउनलोड) में संग्रहीत करें।
  5. मॉक फ़ाइल अपलोड (वैकल्पिक): ऐसे परिदृश्यों में जहां आप प्रदर्शन कारणों से फ़ाइल अपलोड को मॉक करना चाहते हैं, वास्तविक फ़ाइल अपलोड को बायपास करने के लिए स्टब्स का उपयोग करें।

निष्कर्ष

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

इस गाइड में, हमने पता लगाया कि कैसे:

  • साइप्रस के साइप्रस-फ़ाइल-अपलोड प्लगइन का उपयोग करके फ़ाइलें अपलोड करें।
  • फ़ाइल नाम और मेटाडेटा की जांच करके फ़ाइल अपलोड को सत्यापित करें।
  • cypress-downloadfile प्लगइन का उपयोग करके फ़ाइलें डाउनलोड करें और डाउनलोड की गई फ़ाइलों के अस्तित्व और सामग्री को मान्य करें।

इन उपकरणों और तकनीकों के साथ, आप अपने साइप्रस एंड-टू-एंड परीक्षणों में फ़ाइल अपलोड और डाउनलोड को आत्मविश्वास से संभाल सकते हैं!

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/asvani25/how-to-validate-upload-and-download-in-cypress-31d4?1 यदि कोई उल्लंघन है, तो हटाने के लिए कृपया [email protected] पर संपर्क करें यह
नवीनतम ट्यूटोरियल अधिक>

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

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

Copyright© 2022 湘ICP备2022001581号-3