Cypress - 复选框

check 和 uncheck 命令用于复选框。在 html 代码中,复选框有一个 input 标签,其 type 属性的值为 checkbox。

Cypress 命令

复选框相关的 Cypress 命令如下 −

  • 用于单击所有复选框的命令如下 −

cy.get('input[type="checkbox"]').check()
  • 用于单击 id 为 checkbox 的复选框的命令如下 −

cy.get('#chk').check()
  • 用于单击值为 Cypress 的复选框的命令如下−

cy.get('input[type="checkbox"]').check('Cypress')
  • 用于单击具有值的复选框的命令 - Java 和 Python如下 −

cy.get('input[type="checkbox"]').check(['Java','Python'])
  • 用于单击具有值 Java 和选项的复选框的命令如下 −

cy.get('.chk').check('Java', options)
  • 用于单击带值的复选框 - Java 和 Python 带选项的复选框如下:

cy.get('input[type="checkbox"]').check(['Java','Python'], options)
  • 用于单击带有选项的复选框的命令如下 −

cy.get('.chk').check({force : true})
  • 用于取消选中所有复选框的命令如下 −

cy.get('input[type="checkbox"]').uncheck()
  • 用于取消选中 id 为 check 的复选框的命令如下 −

cy.get('#chk').uncheck()
  • 用于取消选中值为 Cypress 的复选框的命令如下 −

cy.get('input[type="checkbox"]').uncheck('Cypress')
  • 用于取消选中值为 Java 和 Python 的复选框的命令如下 −

cy.get('input[type="checkbox"]').uncheck(['Java','Python'])
  • 用于取消选中值为 Java 的复选框的命令如下 −

cy.get('.chk').uncheck('Java', options)
  • 用于取消选中带有值 – Java 和 Python 的复选框的命令,带有选项,如下所示 −

cy.get('input[type="checkbox"]').uncheck(['Java','Python'], options)
  • 用于取消选中带有选项的类 check 的复选框的命令如下所示 −

cy.get('.chk').uncheck({force : true)

Cypress 中的选项

Cypress 中可用的选项如下 −

  • log – 默认值 – true − 这用于打开/关闭控制台日志。

  • timeout – 默认值 – defaultCommandTimeout(4000ms) − 这用于提供抛出错误之前的最大等待时间。

  • force – 默认值 – false − 这用于强制执行操作。

  • scrollBehaviour – 默认值 – scrollBehaviour(top) − 这是用于在执行命令之前将元素滚动到视口的位置。

  • waitForAnimations – 默认值 – waitForAnimations(true) −这用于在运行命令之前等待元素完成动画。

  • animationDistanceThreshold - 默认值 – animationDistanceThreshold (5) −这是元素的像素距离,必须超过该距离才能符合动画要求。

选中/取消选中命令都需要与产生 DOM 元素的命令链接在一起,并且可以对这些命令应用断言。

Cypress 命令的实现

下面解释了 Cypress 中命令的实现 −

// 测试套件
describe('Tutorialspoint', function () {
    // it 函数用于识别测试
    it('Scenario 1', function (){
        // 测试步骤用于启动 URL
        cy.visit("https://accounts.google.com/signup")
        //带断言的复选框
        cy.get('input[type="checkbox"]').check().should('be.checked')
        //使用带断言的类识别复选框
        cy.get('.VfPpkd-muHVFf-bMcfAe').uncheck().should('not.be.checked')
    })
})

执行结果

输出结果如下 −

Implementation of Cypress Commands

以上结果显示 Show password 左侧的复选框,首先使用 check 命令进行选中(使用 assertion-should 进行验证)。

然后,使用 uncheck 命令取消选中(也使用 assertion-should 进行验证)。