作用

  • 将所有后续 cy 命令的作用域限定在此元素内
  • 在特定的元素组(例如 )中工作时很有用

    语法格式

    1. .within(callbackFn)
    2. .within(options, callbackFn)

    callbackFn

  • 回调函数

  • 第一个参数是上一条命令的返回结果(必须是元素)

    options 参数

    log:是否将命令显示到命令日志中,默认 true

正确用法

  1. cy.get('form').within(($form) => {
  2. // 在回调函数里,cy 命令的作用域将限定在 form 中
  3. })

错误用法

  1. // 不能直接他通过 cy 调用
  2. cy.within(() => {})
  3. // getCookies() 返回的不是一个元素
  4. cy.getCookies().within(() => {})

命令返回结果

返回和上一条命令一样的结果

实际栗子

代码

Cypress系列(73)- within() 命令详解 - 图1
重点:回调函数里的 cy.get() 只会从 form 表单里面找元素,而不是整个页面

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

Cypress系列(73)- within() 命令详解 - 图2
两个命令的返回结果都是 form 表单
Cypress系列(73)- within() 命令详解 - 图3

获取输入框的效果

Cypress系列(73)- within() 命令详解 - 图4
————————————————
版权声明:本文为CSDN博主「小菠萝测试笔记」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_33801641/article/details/109836412