Skip to content

PrashantSinghT99/cypress

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

npx cypress open : GUI MODE

npx cypress run : RUN ALL TESTS FROM TERMINAL IN HEADLESS MODE

npx cypress run --headed : RUN ALL TESTS FROM TERMINAL IN HEAD MODE (DEFAULT BROWSER ELECTRON)

npx cypress run --browser=chrome : RUN ALL TESTS FROM TERMINAL IN HEAD MODE (BY SETTING BROWSER)

npx cypress run --spec cypress\e2e\my.test.cy.js : RUN SPECIFIC TESTCASE

npx cypress run --config baseUrl=""

cypress run --env "token"="abc"


LOCATORS

ID

tag#id

tag.class

tag[attribute:"value"]

tag.class[attribute:"value"]

XPATH:

npm install -D cypress-xpath

commands.js

/// <reference types="Cypress"/>

/// <reference types="cypress-xpath" />

e2e.js

require('cypress-xpath');

cy.get("css locator")
cy.xpath


implicit explicit assertions

https://docs.cypress.io/guides/references/assertions

ALERTS

WINDOW:ALERT VALIDATION OF ALERT
WINDOW:CONFIRM: CLICKING ON CONFIRM
WINDOW:ALERT: CLICKING ON CANCEL
WINDOW:PROMPT: ENTER TEXT IN ALERT BY CAPTURING IT EARLIER
AUTHENTICATION USING URL/ AUTH OBJECT


FRAMES

HOW TO GET FRAME AND DOCUMENT WITHIN IT AND WRAP IT TO PERFORM ACTIONS
HOW TO CREATE A CUSTOM COMMAND
HOW TO USE PLUGIN IN FRAMES


MOUSE OPERATIONS:

MOUSE HOVER
DOUBLE CLICK
RIGHT CLICK
DRAG DROP 
SCROLL TO A ELEMENT


FILE UPLOAD:

HOW TO UPLOAD SINGLE FILE
HOW TO UPLOAD MULTIPLE FILE
HOW TO RENAME A FILE
HOW TO DRAG DROP A FILE UPLOAD
HOW TO UPLOAD FILE SHADOW DOM


IMPORTANT PLUGINS:

CYPRESS XPATH PLUGIN: cypress-xpath
FILE UPLOAD PLUGIN: cypress-file-upload
DRAG AND DROP PLUGIN: cypress-drag-drop
IFRAME PLUGIN: cypress-iframe

NAVIGATION:

cy.go("forward") or cy.go(1)
cy.go('back) or cy.go(-1)

SCREENSHOT CAPTURING

screenshot() or via terminal run command videos and screenshot gets captured add  video: true, in cypress.config.js


PERSERVE COOKIES

cy.getCookies()
cy.setCookie()
cy.clearCookies()
cy.clearLocalStorage() 

Cypress.Cookies.preserveOnce("sessionId","remember_");



IMPLICIT ASSERTIONS

.should("have.length", 5)
.should("be.visible");
.should("exist");
.should("include", "PrashantSingh").and("not.contain", "pst99")
.should("include", "PrashantSingh");
.should("contains", "prashantsinght99");
.should("eq", "https://prashantsinght99.github.io/PrashantSingh.github.io/");
.should("have.value", "prashant");
.should("have.text", "You successfully clicked an alert");
.should("have.contain", "Congratulations");

.uncheck().should("not.be.checked")
.check().should("be.checked")
.check({ force: true }).should("be.checked");


EXPLICIT ASSERTIONS

cy.get('.name > h1').then((element) => {
            let actualname = element.text();
            expect(expectedname).to.equal(actualname);
            expect(expectedname).to.not.equal(notexpectedname);
            assert.equal(actualname, expectedname);
            assert.notEqual(actualname, notexpectedname);
            expect(element).to.contains("I am a JS Alert");
        })


Direct

should('eq','')
should('contain','')
should('include','')

should('be.visible')
should('be.checked')
should('exist')
should('be.disabled')
should('be.focused')


should('have.length')
should('have.value')
should('have.text')
should('have.contain')

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published