首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Cypress-iFrame命令链接Cypress-If / Cypress -拖放命令时出错

使用Cypress-iFrame命令链接Cypress-If / Cypress -拖放命令时出错
EN

Stack Exchange QA用户
提问于 2022-12-08 11:35:52
回答 1查看 75关注 0票数 0

应用程序,我必须自动化,完全在一个iframe内。为了继续,我使用了cypress-iframe插件。

但是,当我试图将cypress-drag-dropcypress-if的命令链接到cypress-iframe上时,它将返回以下错误:

cy.iframe(...).find(...).should(...).if is not a function

下面是抛出错误的脚本:cy.iframe('#iframeID').find('#checkboxLocator').should('be.visible').if('not.checked').check();

有什么解决办法吗?

EN

回答 1

Stack Exchange QA用户

发布于 2023-02-06 04:34:13

似乎您正在尝试将"if“命令从柏树-if插件链接到来自Cypress的”应该“命令,但是您遇到了一个错误,即"if不是一个函数”。

问题可能是柏树-如果插件没有正确加载,或者可能与您正在使用的其他插件或库存在命名冲突。

一种解决方案是尝试将"if“命令包装在函数中并调用它,如下所示:

代码语言:javascript
复制
cy.iframe('#iframeID')
  .find('#checkboxLocator')
  .should('be.visible')
  .then(checkbox => {
    cy.wrap(checkbox).if('not.checked').check();
  });

另一种解决方案是尝试使用“然后”命令有条件地选中复选框,如下所示:

代码语言:javascript
复制
cy.iframe('#iframeID')
  .find('#checkboxLocator')
  .should('be.visible')
  .then(checkbox => {
    if (!checkbox.is(':checked')) {
      checkbox.check();
    }
  });

尝试这两种解决方案,看看哪一种适合你。

票数 0
EN
页面原文内容由Stack Exchange QA提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://sqa.stackexchange.com/questions/50815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档