关于 Cypress 同界面元素交互的讨论
生活随笔
收集整理的這篇文章主要介紹了
关于 Cypress 同界面元素交互的讨论
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
click 是 Cypress 里最常用的模擬用戶操作的方法之一。
這些命令模擬用戶與您的應用程序交互。 在幕后,Cypress 會觸發瀏覽器會觸發的事件,從而導致應用程序的事件綁定被觸發。
在發出任何命令之前,我們檢查 DOM 的當前狀態并采取一些操作來確保 DOM 元素“準備好”接收操作。
Cypress 將等待元素在 defaultCommandTimeout 的持續時間內通過所有這些檢查。
Cypress 有一套復雜的規則判斷一個元素是否處于 hiden 狀態,見官網。
[圖片]
hides overflow 的含義是具有下列至少一種屬性:
overflow: hidden, overflow-x: hidden, overflow-y: hidden, overflow: scroll, or overflow: autodisable: 如果元素 disabled 狀態為 true,則無法執行 click.
當許多應用程序重新渲染 DOM 時,它們實際上會刪除 DOM 元素并在其位置插入一個新的 DOM 元素,并使用新的更改屬性。
Cypress 會檢查您要進行斷言的元素是否與 DOM 分離。 這會檢查元素是否仍在被測應用程序的文檔中。
在執行 type 方法時,元素不能是 readonly 狀態。
使用 debug 命令有助于排錯:
// break on a debugger before the action command cy.get('button').debug().click()有的時候,我們需要強制拋出 click 事件,哪怕當前元素處于 non-actionable 狀態。此時可以使用 force:true 參數。
// force the click and all subsequent events // to fire even if this element isn't considered 'actionable' cy.get('button').click({ force: true })總結
以上是生活随笔為你收集整理的关于 Cypress 同界面元素交互的讨论的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Cypress 等待某个 HTTP pu
- 下一篇: Jerry 的 SAP 技术交流群里讨论