ಕನ್ನಡ

ಸೈಪ್ರೆಸ್, ಶಕ್ತಿಯುತ ಎಂಡ್-ಟು-ಎಂಡ್ ಟೆಸ್ಟಿಂಗ್ ಫ್ರೇಮ್‌ವರ್ಕ್‌ನ ಒಂದು ಸಮಗ್ರ ಮಾರ್ಗದರ್ಶಿ. ಇದು ಇನ್‌ಸ್ಟಾಲೇಶನ್, ಟೆಸ್ಟ್ ಬರೆಯುವುದು, ಡೀಬಗ್ ಮಾಡುವುದು, CI/CD ಇಂಟಿಗ್ರೇಷನ್, ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಒಳಗೊಂಡಿದೆ.

ಸೈಪ್ರೆಸ್: ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗಾಗಿ ಅಂತಿಮ ಎಂಡ್-ಟು-ಎಂಡ್ ಟೆಸ್ಟಿಂಗ್ ಮಾರ್ಗದರ್ಶಿ

ಇಂದಿನ ವೇಗವಾಗಿ ಬದಲಾಗುತ್ತಿರುವ ವೆಬ್ ಡೆವಲಪ್‌ಮೆಂಟ್ ಜಗತ್ತಿನಲ್ಲಿ, ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಗುಣಮಟ್ಟ ಮತ್ತು ವಿಶ್ವಾಸಾರ್ಹತೆಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದು ಅತಿಮುಖ್ಯವಾಗಿದೆ. ಬಳಕೆದಾರರ ದೃಷ್ಟಿಕೋನದಿಂದ ಅಪ್ಲಿಕೇಶನ್‌ನ ಎಲ್ಲಾ ಘಟಕಗಳು ಒಟ್ಟಾಗಿ ಸರಾಗವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸುವಲ್ಲಿ ಎಂಡ್-ಟು-ಎಂಡ್ (E2E) ಟೆಸ್ಟಿಂಗ್ ಪ್ರಮುಖ ಪಾತ್ರ ವಹಿಸುತ್ತದೆ. ಸೈಪ್ರೆಸ್ ಪ್ರಮುಖ E2E ಟೆಸ್ಟಿಂಗ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಆಗಿ ಹೊರಹೊಮ್ಮಿದೆ, ಇದು ಡೆವಲಪರ್-ಸ್ನೇಹಿ ಅನುಭವ, ಶಕ್ತಿಯುತ ವೈಶಿಷ್ಟ್ಯಗಳು ಮತ್ತು ಅತ್ಯುತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ನೀಡುತ್ತದೆ. ಈ ಸಮಗ್ರ ಮಾರ್ಗದರ್ಶಿಯು ಸೈಪ್ರೆಸ್‌ನೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸಲು ಮತ್ತು ನಿಮ್ಮ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಪರೀಕ್ಷಿಸಲು ನಿಮಗೆ ಬೇಕಾದ ಎಲ್ಲವನ್ನೂ ವಿವರಿಸುತ್ತದೆ.

ಸೈಪ್ರೆಸ್ ಎಂದರೇನು?

ಸೈಪ್ರೆಸ್ ಆಧುನಿಕ ವೆಬ್‌ಗಾಗಿ ನಿರ್ಮಿಸಲಾದ ಮುಂದಿನ ಪೀಳಿಗೆಯ ಫ್ರಂಟ್-ಎಂಡ್ ಟೆಸ್ಟಿಂಗ್ ಸಾಧನವಾಗಿದೆ. ಬ್ರೌಸರ್‌ನಲ್ಲಿ ಟೆಸ್ಟ್‌ಗಳನ್ನು ನಡೆಸುವ ಸಾಂಪ್ರದಾಯಿಕ ಟೆಸ್ಟಿಂಗ್ ಫ್ರೇಮ್‌ವರ್ಕ್‌ಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿ, ಸೈಪ್ರೆಸ್ ನೇರವಾಗಿ ಬ್ರೌಸರ್‌ನಲ್ಲೇ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಇದು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ನ ನಡವಳಿಕೆಯ ಮೇಲೆ ನಿಮಗೆ ಅಭೂತಪೂರ್ವ ನಿಯಂತ್ರಣ ಮತ್ತು ಗೋಚರತೆಯನ್ನು ನೀಡುತ್ತದೆ. ಇದನ್ನು ವೇಗವಾಗಿ, ವಿಶ್ವಾಸಾರ್ಹವಾಗಿ ಮತ್ತು ಬಳಸಲು ಸುಲಭವಾಗುವಂತೆ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ, ಇದು ವಿಶ್ವಾದ್ಯಂತ ಡೆವಲಪರ್‌ಗಳು ಮತ್ತು QA ಇಂಜಿನಿಯರ್‌ಗಳಲ್ಲಿ ಜನಪ್ರಿಯ ಆಯ್ಕೆಯಾಗಿದೆ. ಸೈಪ್ರೆಸ್ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲ್ಪಟ್ಟಿದೆ ಮತ್ತು ಬ್ರೌಸರ್‌ನೊಳಗೆ ಕಾರ್ಯಗತಗೊಳ್ಳುತ್ತದೆ, ಇದು ಹೆಚ್ಚು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ನೀಡುತ್ತದೆ ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್‌ನ ಆಂತರಿಕ ಭಾಗಗಳಿಗೆ ಸಾಟಿಯಿಲ್ಲದ ಪ್ರವೇಶವನ್ನು ನೀಡುತ್ತದೆ.

ಸೈಪ್ರೆಸ್ ಬಳಸುವುದರ ಪ್ರಮುಖ ಪ್ರಯೋಜನಗಳು

ಇನ್‌ಸ್ಟಾಲೇಶನ್ ಮತ್ತು ಸೆಟಪ್

ಸೈಪ್ರೆಸ್‌ನೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸುವುದು ಸರಳವಾಗಿದೆ. ಅದನ್ನು ಹೇಗೆ ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡುವುದು ಎಂಬುದು ಇಲ್ಲಿದೆ:

  1. ಪೂರ್ವಾಪೇಕ್ಷಿತಗಳು: ನಿಮ್ಮ ಸಿಸ್ಟಂನಲ್ಲಿ Node.js ಮತ್ತು npm (ನೋಡ್ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್) ಇನ್‌ಸ್ಟಾಲ್ ಆಗಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ. ನೀವು ಅವುಗಳನ್ನು ಅಧಿಕೃತ Node.js ವೆಬ್‌ಸೈಟ್‌ನಿಂದ ಡೌನ್‌ಲೋಡ್ ಮಾಡಬಹುದು.
  2. ಸೈಪ್ರೆಸ್ ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ: ನಿಮ್ಮ ಟರ್ಮಿನಲ್ ಅಥವಾ ಕಮಾಂಡ್ ಪ್ರಾಂಪ್ಟ್ ತೆರೆಯಿರಿ, ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್ ಡೈರೆಕ್ಟರಿಗೆ ನ್ಯಾವಿಗೇಟ್ ಮಾಡಿ ಮತ್ತು ಈ ಕೆಳಗಿನ ಕಮಾಂಡ್ ಅನ್ನು ರನ್ ಮಾಡಿ:
  3. npm install cypress --save-dev
  4. ಸೈಪ್ರೆಸ್ ತೆರೆಯಿರಿ: ಇನ್‌ಸ್ಟಾಲೇಶನ್ ಪೂರ್ಣಗೊಂಡ ನಂತರ, ನೀವು ಈ ಕೆಳಗಿನ ಕಮಾಂಡ್ ಅನ್ನು ರನ್ ಮಾಡುವ ಮೂಲಕ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್ ರನ್ನರ್ ಅನ್ನು ತೆರೆಯಬಹುದು:
  5. npx cypress open

    ಈ ಕಮಾಂಡ್ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್ ರನ್ನರ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತದೆ, ಇದು ನಿಮ್ಮ ಟೆಸ್ಟ್‌ಗಳನ್ನು ರನ್ ಮಾಡಲು ಮತ್ತು ಡೀಬಗ್ ಮಾಡಲು ಗ್ರಾಫಿಕಲ್ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಒದಗಿಸುತ್ತದೆ.

ನಿಮ್ಮ ಮೊದಲ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್ ಬರೆಯುವುದು

ವೆಬ್‌ಸೈಟ್‌ನ ಮುಖಪುಟ ಸರಿಯಾಗಿ ಲೋಡ್ ಆಗುತ್ತದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಲು ಒಂದು ಸರಳ ಟೆಸ್ಟ್ ಅನ್ನು ರಚಿಸೋಣ. ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್‌ನ `cypress/e2e` ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ `example.cy.js` ಎಂಬ ಹೊಸ ಫೈಲ್ ಅನ್ನು ರಚಿಸಿ.


// cypress/e2e/example.cy.js

describe('ನನ್ನ ಮೊದಲ ಟೆಸ್ಟ್', () => {
  it('ಕಿಚನ್ ಸಿಂಕ್‌ಗೆ ಭೇಟಿ ನೀಡುತ್ತದೆ', () => {
    cy.visit('https://example.cypress.io')
    cy.contains('type').click()
    cy.url().should('include', '/commands/actions')

    cy.get('.action-email')
      .type('fake@email.com')
      .should('have.value', 'fake@email.com')
  })
})

ಈ ಟೆಸ್ಟ್ ಅನ್ನು ವಿಶ್ಲೇಷಿಸೋಣ:

ಈ ಟೆಸ್ಟ್ ಅನ್ನು ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್ ರನ್ನರ್‌ನಲ್ಲಿ ರನ್ ಮಾಡಿ ಅದರ ಕಾರ್ಯವನ್ನು ನೋಡಿ. ಬ್ರೌಸರ್ ಸೈಪ್ರೆಸ್ ಕಿಚನ್ ಸಿಂಕ್ ವೆಬ್‌ಸೈಟ್‌ಗೆ ನ್ಯಾವಿಗೇಟ್ ಮಾಡುವುದನ್ನು, "type" ಲಿಂಕ್ ಮೇಲೆ ಕ್ಲಿಕ್ ಮಾಡುವುದನ್ನು ಮತ್ತು URL ಅನ್ನು ಪರಿಶೀಲಿಸುವುದನ್ನು ನೀವು ನೋಡಬೇಕು.

ಸೈಪ್ರೆಸ್ ಕಮಾಂಡ್‌ಗಳು

ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ನೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಸೈಪ್ರೆಸ್ ವ್ಯಾಪಕ ಶ್ರೇಣಿಯ ಕಮಾಂಡ್‌ಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇಲ್ಲಿ ಸಾಮಾನ್ಯವಾಗಿ ಬಳಸುವ ಕೆಲವು ಕಮಾಂಡ್‌ಗಳಿವೆ:

ಇವು ಸೈಪ್ರೆಸ್‌ನಲ್ಲಿ ಲಭ್ಯವಿರುವ ಹಲವು ಕಮಾಂಡ್‌ಗಳಲ್ಲಿ ಕೆಲವೇ ಕೆಲವು. ಕಮಾಂಡ್‌ಗಳು ಮತ್ತು ಅವುಗಳ ಆಯ್ಕೆಗಳ ಸಂಪೂರ್ಣ ಪಟ್ಟಿಗಾಗಿ ಸೈಪ್ರೆಸ್ ದಸ್ತಾವೇಜನ್ನು ನೋಡಿ.

ಸೈಪ್ರೆಸ್‌ನಲ್ಲಿ ಅಸರ್ಶನ್‌ಗಳು

ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ನ ನಿರೀಕ್ಷಿತ ನಡವಳಿಕೆಯನ್ನು ಪರಿಶೀಲಿಸಲು ಅಸರ್ಶನ್‌ಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಸೈಪ್ರೆಸ್ ಅಂತರ್ನಿರ್ಮಿತ ಅಸರ್ಶನ್‌ಗಳ ಸಮೃದ್ಧ ಗುಂಪನ್ನು ಒದಗಿಸುತ್ತದೆ, ಅದನ್ನು ನೀವು ಎಲಿಮೆಂಟ್‌ಗಳ ಸ್ಥಿತಿ, URL, ಶೀರ್ಷಿಕೆ ಮತ್ತು ಹೆಚ್ಚಿನದನ್ನು ಪರಿಶೀಲಿಸಲು ಬಳಸಬಹುದು. ಅಸರ್ಶನ್‌ಗಳನ್ನು `.should()` ವಿಧಾನವನ್ನು ಬಳಸಿಕೊಂಡು ಸೈಪ್ರೆಸ್ ಕಮಾಂಡ್‌ಗಳ ನಂತರ ಚೈನ್ ಮಾಡಲಾಗುತ್ತದೆ.

ಕೆಲವು ಸಾಮಾನ್ಯ ಅಸರ್ಶನ್ ಉದಾಹರಣೆಗಳು ಇಲ್ಲಿವೆ:

ನಿಮ್ಮ ನಿರ್ದಿಷ್ಟ ಅಗತ್ಯಗಳಿಗೆ ತಕ್ಕಂತೆ ನೀವು ಕಸ್ಟಮ್ ಅಸರ್ಶನ್‌ಗಳನ್ನು ಸಹ ರಚಿಸಬಹುದು.

ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ಬರೆಯಲು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳು

ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಅನುಸರಿಸುವುದು ನಿಮಗೆ ಹೆಚ್ಚು ನಿರ್ವಹಿಸಬಲ್ಲ, ವಿಶ್ವಾಸಾರ್ಹ ಮತ್ತು ದಕ್ಷ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ಬರೆಯಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಇಲ್ಲಿ ಕೆಲವು ಶಿಫಾರಸುಗಳಿವೆ:

ಸುಧಾರಿತ ಸೈಪ್ರೆಸ್ ತಂತ್ರಗಳು

ಸ್ಟಬ್ಬಿಂಗ್ ಮತ್ತು ಮಾಕಿಂಗ್

ಸೈಪ್ರೆಸ್ ನಿಮಗೆ ನೆಟ್‌ವರ್ಕ್ ವಿನಂತಿಗಳು ಮತ್ತು ಪ್ರತಿಕ್ರಿಯೆಗಳನ್ನು ಸ್ಟಬ್ ಮಾಡಲು ಅನುಮತಿಸುತ್ತದೆ, ಇದು ವಿಭಿನ್ನ ಸನ್ನಿವೇಶಗಳನ್ನು ಅನುಕರಿಸಲು ಮತ್ತು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ನ ದೋಷ ನಿರ್ವಹಣೆಯನ್ನು ಪರೀಕ್ಷಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಇದು ಬಾಹ್ಯ APIಗಳು ಅಥವಾ ಸೇವೆಗಳನ್ನು ಅವಲಂಬಿಸಿರುವ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ವಿಶೇಷವಾಗಿ ಉಪಯುಕ್ತವಾಗಿದೆ.

ನೆಟ್‌ವರ್ಕ್ ವಿನಂತಿಯನ್ನು ಸ್ಟಬ್ ಮಾಡಲು, ನೀವು `cy.intercept()` ಕಮಾಂಡ್ ಅನ್ನು ಬಳಸಬಹುದು. ಉದಾಹರಣೆಗೆ, ಕೆಳಗಿನ ಕೋಡ್ `/api/users` ಗೆ GET ವಿನಂತಿಯನ್ನು ಸ್ಟಬ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ಮಾಕ್ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ:


cy.intercept('GET', '/api/users', {
  statusCode: 200,
  body: [
    { id: 1, name: 'John Doe' },
    { id: 2, name: 'Jane Doe' }
  ]
}).as('getUsers')

ನಂತರ ನೀವು `cy.wait('@getUsers')` ಬಳಸಿ ತಡೆಹಿಡಿದ ವಿನಂತಿಗಾಗಿ ಕಾಯಬಹುದು ಮತ್ತು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಮಾಕ್ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಸರಿಯಾಗಿ ನಿರ್ವಹಿಸುತ್ತದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಬಹುದು.

ಲೋಕಲ್ ಸ್ಟೋರೇಜ್ ಮತ್ತು ಕುಕೀಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದು

ಸೈಪ್ರೆಸ್ ಲೋಕಲ್ ಸ್ಟೋರೇಜ್ ಮತ್ತು ಕುಕೀಗಳೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಕಮಾಂಡ್‌ಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ನಿಮ್ಮ ಟೆಸ್ಟ್‌ಗಳಲ್ಲಿ ಲೋಕಲ್ ಸ್ಟೋರೇಜ್ ಮತ್ತು ಕುಕೀಗಳನ್ನು ಹೊಂದಿಸಲು, ಪಡೆಯಲು ಮತ್ತು ತೆರವುಗೊಳಿಸಲು ನೀವು ಈ ಕಮಾಂಡ್‌ಗಳನ್ನು ಬಳಸಬಹುದು.

ಲೋಕಲ್ ಸ್ಟೋರೇಜ್ ಐಟಂ ಅನ್ನು ಹೊಂದಿಸಲು, ನೀವು ವಿಂಡೋ ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಲು `cy.window()` ಕಮಾಂಡ್ ಅನ್ನು ಬಳಸಬಹುದು ಮತ್ತು ನಂತರ `localStorage.setItem()` ವಿಧಾನವನ್ನು ಬಳಸಬಹುದು. ಉದಾಹರಣೆಗೆ:


cy.window().then((win) => {
  win.localStorage.setItem('myKey', 'myValue')
})

ಲೋಕಲ್ ಸ್ಟೋರೇಜ್ ಐಟಂ ಅನ್ನು ಪಡೆಯಲು, ನೀವು `cy.window()` ಕಮಾಂಡ್ ಅನ್ನು ಬಳಸಬಹುದು ಮತ್ತು ನಂತರ `localStorage.getItem()` ವಿಧಾನವನ್ನು ಬಳಸಬಹುದು. ಉದಾಹರಣೆಗೆ:


cy.window().then((win) => {
  const value = win.localStorage.getItem('myKey')
  expect(value).to.equal('myValue')
})

ಕುಕೀಯನ್ನು ಹೊಂದಿಸಲು, ನೀವು `cy.setCookie()` ಕಮಾಂಡ್ ಅನ್ನು ಬಳಸಬಹುದು. ಉದಾಹರಣೆಗೆ:


cy.setCookie('myCookie', 'myCookieValue')

ಕುಕೀಯನ್ನು ಪಡೆಯಲು, ನೀವು `cy.getCookie()` ಕಮಾಂಡ್ ಅನ್ನು ಬಳಸಬಹುದು. ಉದಾಹರಣೆಗೆ:


cy.getCookie('myCookie').should('have.property', 'value', 'myCookieValue')

ಫೈಲ್ ಅಪ್‌ಲೋಡ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸುವುದು

ಸೈಪ್ರೆಸ್ `cypress-file-upload` ಎಂಬ ಪ್ಲಗಿನ್ ಅನ್ನು ಒದಗಿಸುತ್ತದೆ, ಇದು ನಿಮ್ಮ ಟೆಸ್ಟ್‌ಗಳಲ್ಲಿ ಫೈಲ್ ಅಪ್‌ಲೋಡ್‌ಗಳನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ. ಪ್ಲಗಿನ್ ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲು, ಈ ಕೆಳಗಿನ ಕಮಾಂಡ್ ಅನ್ನು ರನ್ ಮಾಡಿ:

npm install -D cypress-file-upload

ನಂತರ, ನಿಮ್ಮ `cypress/support/commands.js` ಫೈಲ್‌ಗೆ ಈ ಕೆಳಗಿನ ಸಾಲನ್ನು ಸೇರಿಸಿ:


import 'cypress-file-upload';

ನಂತರ ನೀವು ಫೈಲ್ ಅಪ್‌ಲೋಡ್ ಮಾಡಲು `cy.uploadFile()` ಕಮಾಂಡ್ ಅನ್ನು ಬಳಸಬಹುದು. ಉದಾಹರಣೆಗೆ:


cy.get('input[type="file"]').attachFile('example.txt')

IFrames ನೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದು

IFrames ಅನ್ನು ಪರೀಕ್ಷಿಸುವುದು ಟ್ರಿಕಿ ಆಗಿರಬಹುದು, ಆದರೆ ಸೈಪ್ರೆಸ್ ಅವುಗಳೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಒಂದು ಮಾರ್ಗವನ್ನು ಒದಗಿಸುತ್ತದೆ. IFrame ಲೋಡ್ ಆಗಲು ಕಾಯಲು ನೀವು `cy.frameLoaded()` ಕಮಾಂಡ್ ಅನ್ನು ಬಳಸಬಹುದು, ಮತ್ತು ನಂತರ IFrame ನ ಡಾಕ್ಯುಮೆಂಟ್ ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಪಡೆಯಲು `cy.iframe()` ಕಮಾಂಡ್ ಅನ್ನು ಬಳಸಬಹುದು.


cy.frameLoaded('#myIframe')
cy.iframe('#myIframe').find('button').click()

ಸೈಪ್ರೆಸ್ ಮತ್ತು ನಿರಂತರ ಏಕೀಕರಣ/ನಿರಂತರ ನಿಯೋಜನೆ (CI/CD)

ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ನ ಗುಣಮಟ್ಟವನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಸೈಪ್ರೆಸ್ ಅನ್ನು ನಿಮ್ಮ CI/CD ಪೈಪ್‌ಲೈನ್‌ಗೆ ಸಂಯೋಜಿಸುವುದು ಅತ್ಯಗತ್ಯ. ನಿಮ್ಮ CI/CD ಪರಿಸರದಲ್ಲಿ ನೀವು ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ಹೆಡ್‌ಲೆಸ್ ಮೋಡ್‌ನಲ್ಲಿ ರನ್ ಮಾಡಬಹುದು. ಅದು ಹೇಗೆ ಎಂಬುದು ಇಲ್ಲಿದೆ:

  1. ಸೈಪ್ರೆಸ್ ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ: ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್‌ನಲ್ಲಿ ಸೈಪ್ರೆಸ್ ಒಂದು ಡಿಪೆಂಡೆನ್ಸಿಯಾಗಿ ಇನ್‌ಸ್ಟಾಲ್ ಆಗಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.
  2. CI/CD ಕಾನ್ಫಿಗರ್ ಮಾಡಿ: ಪ್ರತಿ ಬಿಲ್ಡ್ ನಂತರ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ರನ್ ಮಾಡಲು ನಿಮ್ಮ CI/CD ಪೈಪ್‌ಲೈನ್ ಅನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ.
  3. ಸೈಪ್ರೆಸ್ ಅನ್ನು ಹೆಡ್‌ಲೆಸ್ ಆಗಿ ರನ್ ಮಾಡಿ: ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ಹೆಡ್‌ಲೆಸ್ ಮೋಡ್‌ನಲ್ಲಿ ರನ್ ಮಾಡಲು `cypress run` ಕಮಾಂಡ್ ಬಳಸಿ.

ಉದಾಹರಣೆ CI/CD ಕಾನ್ಫಿಗರೇಶನ್ (GitHub Actions ಬಳಸಿ):


name: Cypress Tests

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  cypress-run:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: 16
      - name: Install dependencies
        run: npm install
      - name: Cypress run
        uses: cypress-io/github-action@v5
        with:
          start: npm start
          wait-on: 'http://localhost:3000'

ಈ ಕಾನ್ಫಿಗರೇಶನ್ `main` ಬ್ರಾಂಚ್‌ಗೆ ಕೋಡ್ ಪುಶ್ ಮಾಡಿದಾಗ ಅಥವಾ `main` ಬ್ರಾಂಚ್ ವಿರುದ್ಧ ಪುಲ್ ರಿಕ್ವೆಸ್ಟ್ ರಚಿಸಿದಾಗ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ರನ್ ಮಾಡುತ್ತದೆ. `cypress-io/github-action` ಆಕ್ಷನ್ GitHub Actions ನಲ್ಲಿ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ರನ್ ಮಾಡುವ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ.

ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ಡೀಬಗ್ ಮಾಡುವುದು

ನಿಮ್ಮ ಟೆಸ್ಟ್‌ಗಳಲ್ಲಿನ ಸಮಸ್ಯೆಗಳನ್ನು ಗುರುತಿಸಲು ಮತ್ತು ಸರಿಪಡಿಸಲು ಸಹಾಯ ಮಾಡಲು ಸೈಪ್ರೆಸ್ ಅತ್ಯುತ್ತಮ ಡೀಬಗ್ ಮಾಡುವ ಸಾಧನಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ಡೀಬಗ್ ಮಾಡಲು ಕೆಲವು ಸಲಹೆಗಳು ಇಲ್ಲಿವೆ:

ಸೈಪ್ರೆಸ್ ಮತ್ತು ಇತರ ಟೆಸ್ಟಿಂಗ್ ಫ್ರೇಮ್‌ವರ್ಕ್‌ಗಳು

ಸೈಪ್ರೆಸ್ ಒಂದು ಶಕ್ತಿಯುತ ಎಂಡ್-ಟು-ಎಂಡ್ ಟೆಸ್ಟಿಂಗ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಆಗಿದ್ದರೂ, ಇದು ಇತರ ಜನಪ್ರಿಯ ಆಯ್ಕೆಗಳೊಂದಿಗೆ ಹೇಗೆ ಹೋಲಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಅತ್ಯಗತ್ಯ. ಇಲ್ಲಿ ಒಂದು ಸಂಕ್ಷಿಪ್ತ ಅವಲೋಕನವಿದೆ:

ಫ್ರೇಮ್‌ವರ್ಕ್‌ನ ಆಯ್ಕೆಯು ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್‌ನ ನಿರ್ದಿಷ್ಟ ಅಗತ್ಯಗಳು ಮತ್ತು ಅವಶ್ಯಕತೆಗಳನ್ನು ಅವಲಂಬಿಸಿರುತ್ತದೆ. ವೇಗದ, ವಿಶ್ವಾಸಾರ್ಹ ಮತ್ತು ಡೆವಲಪರ್-ಸ್ನೇಹಿ ಎಂಡ್-ಟು-ಎಂಡ್ ಟೆಸ್ಟಿಂಗ್ ಅಗತ್ಯವಿರುವ ಆಧುನಿಕ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗೆ ಸೈಪ್ರೆಸ್ ಅತ್ಯುತ್ತಮ ಆಯ್ಕೆಯಾಗಿದೆ.

ನೈಜ-ಪ್ರಪಂಚದ ಉದಾಹರಣೆಗಳು: ಸೈಪ್ರೆಸ್ ಕಾರ್ಯದಲ್ಲಿ

ವಿಭಿನ್ನ ರೀತಿಯ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ಸೈಪ್ರೆಸ್ ಅನ್ನು ಹೇಗೆ ಬಳಸಬಹುದು ಎಂಬುದರ ಕೆಲವು ನೈಜ-ಪ್ರಪಂಚದ ಉದಾಹರಣೆಗಳನ್ನು ಅನ್ವೇಷಿಸೋಣ:

ಇ-ಕಾಮರ್ಸ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಪರೀಕ್ಷಿಸುವುದು

ಇ-ಕಾಮರ್ಸ್ ಅಪ್ಲಿಕೇಶನ್‌ನಲ್ಲಿ ವಿವಿಧ ಬಳಕೆದಾರರ ಫ್ಲೋಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ನೀವು ಸೈಪ್ರೆಸ್ ಅನ್ನು ಬಳಸಬಹುದು, ಉದಾಹರಣೆಗೆ:

ಬಳಕೆದಾರರು ತಮ್ಮ ಕಾರ್ಟ್‌ಗೆ ಉತ್ಪನ್ನವನ್ನು ಯಶಸ್ವಿಯಾಗಿ ಸೇರಿಸಬಹುದು ಎಂದು ಪರಿಶೀಲಿಸುವ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ನ ಉದಾಹರಣೆ ಇಲ್ಲಿದೆ:


it('ಕಾರ್ಟ್‌ಗೆ ಉತ್ಪನ್ನವನ್ನು ಸೇರಿಸುತ್ತದೆ', () => {
  cy.visit('/products')
  cy.get('.product-card').first().find('button').click()
  cy.get('.cart-count').should('have.text', '1')
})

ಸಾಮಾಜಿಕ ಮಾಧ್ಯಮ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಪರೀಕ್ಷಿಸುವುದು

ಸಾಮಾಜಿಕ ಮಾಧ್ಯಮ ಅಪ್ಲಿಕೇಶನ್‌ನಲ್ಲಿ ಬಳಕೆದಾರರ ಸಂವಹನಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ನೀವು ಸೈಪ್ರೆಸ್ ಅನ್ನು ಬಳಸಬಹುದು, ಉದಾಹರಣೆಗೆ:

ಬಳಕೆದಾರರು ಯಶಸ್ವಿಯಾಗಿ ಹೊಸ ಪೋಸ್ಟ್ ಅನ್ನು ರಚಿಸಬಹುದು ಎಂದು ಪರಿಶೀಲಿಸುವ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ನ ಉದಾಹರಣೆ ಇಲ್ಲಿದೆ:


it('ಹೊಸ ಪೋಸ್ಟ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ', () => {
  cy.visit('/profile')
  cy.get('#new-post-textarea').type('ಹಲೋ, ವರ್ಲ್ಡ್!')
  cy.get('#submit-post-button').click()
  cy.get('.post').first().should('contain', 'ಹಲೋ, ವರ್ಲ್ಡ್!')
})

ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಪರೀಕ್ಷಿಸುವುದು

ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗಾಗಿ, ಸೈಪ್ರೆಸ್ ಅನ್ನು ಪ್ರಮುಖ ಕಾರ್ಯಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ಬಳಸಬಹುದು:

ಹಣ ವರ್ಗಾವಣೆಯನ್ನು ಪರಿಶೀಲಿಸುವ ಟೆಸ್ಟ್ ಈ ರೀತಿ ಇರಬಹುದು (ಭದ್ರತೆಗಾಗಿ ಸೂಕ್ತವಾದ ಸ್ಟಬ್ಬಿಂಗ್‌ನೊಂದಿಗೆ):


it('ಹಣವನ್ನು ಯಶಸ್ವಿಯಾಗಿ ವರ್ಗಾಯಿಸುತ್ತದೆ', () => {
  cy.visit('/transfer')
  cy.get('#recipient-account').type('1234567890')
  cy.get('#amount').type('100')
  cy.intercept('POST', '/api/transfer', { statusCode: 200, body: { success: true } }).as('transfer')
  cy.get('#transfer-button').click()
  cy.wait('@transfer')
  cy.get('.success-message').should('be.visible')
})

ತೀರ್ಮಾನ

ಸೈಪ್ರೆಸ್ ಒಂದು ಶಕ್ತಿಯುತ ಮತ್ತು ಬಹುಮುಖಿ ಎಂಡ್-ಟು-ಎಂಡ್ ಟೆಸ್ಟಿಂಗ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಆಗಿದ್ದು, ಇದು ನಿಮ್ಮ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಗುಣಮಟ್ಟ ಮತ್ತು ವಿಶ್ವಾಸಾರ್ಹತೆಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಇದರ ಡೆವಲಪರ್-ಸ್ನೇಹಿ API, ಶಕ್ತಿಯುತ ವೈಶಿಷ್ಟ್ಯಗಳು ಮತ್ತು ಅತ್ಯುತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆ ಇದನ್ನು ವಿಶ್ವಾದ್ಯಂತ ಡೆವಲಪರ್‌ಗಳು ಮತ್ತು QA ಇಂಜಿನಿಯರ್‌ಗಳಲ್ಲಿ ಜನಪ್ರಿಯ ಆಯ್ಕೆಯನ್ನಾಗಿ ಮಾಡಿದೆ. ಈ ಮಾರ್ಗದರ್ಶಿಯಲ್ಲಿ ವಿವರಿಸಿರುವ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಅನುಸರಿಸುವ ಮೂಲಕ, ನೀವು ಅಭಿವೃದ್ಧಿ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ದೋಷಗಳನ್ನು ಬೇಗನೆ ಪತ್ತೆಹಚ್ಚಲು ಮತ್ತು ನಿಮ್ಮ ಬಳಕೆದಾರರಿಗೆ ಉತ್ತಮ ಗುಣಮಟ್ಟದ ಸಾಫ್ಟ್‌ವೇರ್ ಅನ್ನು ತಲುಪಿಸಲು ಸಹಾಯ ಮಾಡುವ ಪರಿಣಾಮಕಾರಿ ಸೈಪ್ರೆಸ್ ಟೆಸ್ಟ್‌ಗಳನ್ನು ಬರೆಯಬಹುದು.

ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ವಿಕಸನಗೊಳ್ಳುತ್ತಲೇ ಇರುವುದರಿಂದ, ಎಂಡ್-ಟು-ಎಂಡ್ ಟೆಸ್ಟಿಂಗ್‌ನ ಪ್ರಾಮುಖ್ಯತೆ ಮಾತ್ರ ಹೆಚ್ಚಾಗುತ್ತದೆ. ಸೈಪ್ರೆಸ್ ಅನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳುವುದು ಮತ್ತು ಅದನ್ನು ನಿಮ್ಮ ಅಭಿವೃದ್ಧಿ ಕೆಲಸದ ಹರಿವಿಗೆ ಸಂಯೋಜಿಸುವುದು ಹೆಚ್ಚು ದೃಢವಾದ, ವಿಶ್ವಾಸಾರ್ಹ ಮತ್ತು ಬಳಕೆದಾರ-ಸ್ನೇಹಿ ವೆಬ್ ಅನುಭವಗಳನ್ನು ನಿರ್ಮಿಸಲು ನಿಮಗೆ ಅಧಿಕಾರ ನೀಡುತ್ತದೆ.