作用

清除所有 Cookie

前言重点知识

  • Cypress 会在每次测试前自动清除所有 Cookie,以防止在测试用例之间共享状态
  • 除非在测试用例中需要调用此命令清除所有 Cookie,否则不需要使用该命令

语法格式

  1. cy.clearCookies()
  2. cy.clearCookies(options)

options 参数

  • log:是否将命令显示到命令日志中,默认 true
  • timeout:命令超时时间

正确用法

  1. // 清除所有 Cookie
  2. cy.clearCookies()

命令返回结果

  • 返回 null
  • 重点:该命令后面不能再链接其他命令

实际栗子

代码

  1. //<reference types="cypress" /R>
  2. describe('clearCookies 登录页面', function () {
  3. const username = 'jane.lane'
  4. const password = 'password123'
  5. before(function () {
  6. // 登录操作
  7. cy.visit("http://localhost:7079/login")
  8. cy.get("input[name=username]").type(username)
  9. cy.get("input[name=password]").type(password)
  10. cy.get("form").submit()
  11. })
  12. it('获取登录后的 cookie', function () {
  13. // 获取登录后的 Cookie
  14. cy.getCookie("cypress-session-cookie")
  15. .should('exist')
  16. // 清空 Cookie
  17. cy.clearCookies()
  18. // 再次查看 Cookie
  19. cy.getCookies()
  20. .should('be.empty')
  21. })
  22. })

运行结果

Cypress系列(82)- clearCookies() 命令详解 - 图1

clearCookies 返回结果

Cypress系列(82)- clearCookies() 命令详解 - 图2

https://www.cnblogs.com/poloyy/p/14014713.html