天天看點

Cypress web自動化8-Cookies 使用

前言

cy.getCookie()

根據 cookie 的 name 名稱,擷取對應 cookie 的 value 值

cy.get('#getCookie .set-a-cookie').click()

// cy.getCookie() yields a cookie object
cy.getCookie('token').should('have.property', 'value', '123ABC')
           

cy.getCookies()

擷取浏覽器全部cookies

cy.getCookies().should('be.empty')

cy.get('#getCookies .set-a-cookie').click()

// cy.getCookies() yields an array of cookies
cy.getCookies().should('have.length', 1).should((cookies) => {

  // each cookie has these properties
  expect(cookies[0]).to.have.property('name', 'token')
  expect(cookies[0]).to.have.property('value', '123ABC')
  expect(cookies[0]).to.have.property('httpOnly', false)
  expect(cookies[0]).to.have.property('secure', false)
  expect(cookies[0]).to.have.property('domain')
  expect(cookies[0]).to.have.property('path')
})
           

cy.setCookie()

cy.getCookies().should('be.empty')

cy.setCookie('foo', 'bar')

// cy.getCookie() yields a cookie object
cy.getCookie('foo').should('have.property', 'value', 'bar')
           

cy.clearCookies()

cy.getCookie('token').should('be.null')

cy.get('#clearCookie .set-a-cookie').click()

cy.getCookie('token').should('have.property', 'value', '123ABC')

// cy.clearCookies() yields null
cy.clearCookie('token').should('be.null')

cy.getCookie('token').should('be.null')
           
cy.getCookies().should('be.empty')

cy.get('#clearCookies .set-a-cookie').click()

cy.getCookies().should('have.length', 1)

// cy.clearCookies() yields null
cy.clearCookies()

cy.getCookies().should('be.empty')
           

繼續閱讀