Cypress系列(59)- 實時調試和中斷


如果想從頭學起Cypress,可以看下面的系列文章哦

https://www.cnblogs.com/poloyy/category/1768839.html

 

前言

Cypress 提供了兩種方式的 debug

 

.debug()

作用

  • 在定位問題時,可以使用 .debug() 來調試,查看此時系統的狀態
  • 記得需要打開瀏覽器開發者工具哦(F12),才能讓調試生效

 

語法格式

.debug()
.debug(options)

// ---or---

cy.debug()
cy.debug(options)

 

 

命令返回結果

返回上一條命令產生的結果

 

正確用法

// 在命令開頭就進行調試
cy.debug().getCookie('app')

// 調試 get 命令
cy.get('nav').debug()

 

栗子

cy.get('a').debug().should('have.attr', 'href')

 

測試結果

主要看 F12

 

debugger

作用

Cypress 測試代碼和被測應用運行在同一個循環中,意味着有訪問和控制頁面上運行着的代碼的權利

 

栗子一

it('debugger', function () {
    cy.get('a').then(function () {
        debugger
    })
});

記得需要打開瀏覽器開發者工具哦(F12)

 

測試結果

 

命令執行流程

上面的代碼整個工作流程如下

  •  cy.visit() 訪問頁面,Cypress 等待加載
  • 查詢該元素(a 標簽),如果沒有立即找到它,Cypress會自動等待並重試一會兒
  •  .get()  執行結果傳遞給 .then() 函數
  • 在 .then() 函數的上下文中,調用 debugger 調試器,停止運行測試代碼並調用 Developer Tools 的焦點
  • 檢查應用程序的狀態,執行 debugger

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM