gpt4 book ai didi

javascript - 类型错误 : Cannot read property 'click' of undefined Cypress

转载 作者:行者123 更新时间:2023-12-02 23:11:04 26 4
gpt4 key购买 nike

我使用代码找到按钮:

cy.get('[class="ng-select ng-select-multiple ng-select-searchable ng-untouched ng-valid ng-select-focused ng-select-opened ng-select-top ng-dirty"]')
.children('[class="ng-select-container ng-has-value"]')
.children('[title="Clear all"]')

然后我执行几个操作 - 例如单击、检查是否可见等。如果我直接在测试文件中包含此代码,那么所有这些操作都有效。

getClearObjectsButton() {
cy.get('[class="ng-select ng-select-multiple ng-select-searchable ng-untouched ng-valid ng-select-focused ng-select-opened ng-select-top ng-dirty"]')
.children('[class="ng-select-container ng-has-value"]')
.children('[title="Clear all"]')
}

但是,如果我使用带有创建函数的辅助文件,则会出现标题所示的错误。

register.getClearObjectsButton().click()
cypress_runner.js:174495 TypeError: Cannot read property 'click' of undefined
at Context.<anonymous> (tests?p=cypress\integration\create_user\check_objects_selector.js-106:580)

知道如何解决这个问题吗?

最佳答案

我对 Cypress 还很陌生,但我建议您尝试以下操作:

1) 最可能的问题/解决方案 - 是否执行了“辅助文件”? 我记得在调用 cypress/support/commands.js 中定义的辅助函数时遇到了一些问题。文件。 Commands.js 是您提到的“辅助文件”吗?看来你正在用 register.getClearObjectsButton() 来调用它。什么是register ?如果你输入 getClearObjectsButton方法进入cypress/support/commands.js文件,然后您可以在所有测试文件中使用 cy.getClearObjectsButton() 调用它

2) 如果执行,请尝试在该辅助文件中也执行单击。有效果吗?

3)另外,如果您确定您的方法已执行,我猜您已经预期了 cypress .get 的产量函数保持“事件”状态,但情况可能并非如此。尝试将其保存在变量中并从 getClearObjectsButton 返回方法。

关于javascript - 类型错误 : Cannot read property 'click' of undefined Cypress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57358163/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com