1. 程式人生 > 實用技巧 >Cypress系列(73)- within() 命令詳解

Cypress系列(73)- within() 命令詳解

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

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

作用

  • 將所有後續 cy 命令的作用域限定在此元素內
  • 在特定的元素組(例如<form>)中工作時很有用

語法格式

.within(callbackFn)
.within(options, callbackFn)

callbackFn

  • 回撥函式
  • 第一個引數是上一條命令的返回結果(必須是元素)

options 引數

log:是否將命令顯示到命令日誌中,預設 true

正確用法

cy.get('form').within(($form) => {
     
// 在回撥函式裡,cy 命令的作用域將限定在 form 中 })

錯誤用法

// 不能直接他通過 cy 呼叫
cy.within(() => {})

// getCookies() 返回的不是一個元素
cy.getCookies().within(() => {})

命令返回結果

返回和上一條命令一樣的結果

實際栗子

程式碼

重點:回撥函式裡的 cy.get() 只會從 form 表單裡面找元素,而不是整個頁面

get() 和 within() 命令的返回結果

兩個命令的返回結果都是 form 表單

獲取輸入框的效果