gpt4 book ai didi

ruby - capybara 找不到 javascript

转载 作者:太空宇宙 更新时间:2023-11-03 18:30:10 25 4
gpt4 key购买 nike

我是 Capybara 测试的新手,遇到了一些问题。

我有一个正在尝试运行的场景,这是步骤实现:

When /^I select the signin link$/ do
click_link 'Sign in'
end

我已尝试使用 xpath、css 访问此链接,并尝试了 within 实现。 Capybara 似乎无法找到它,并在所有情况下返回一个 Capybara::ElementNotFound 异常。

当我不使用 JavaScript 加载网页时,链接不可见,我想知道这是否是 Capybara 找不到它的原因。我找到了一个 trigger 方法,但不确定它是如何工作的。有没有人有 trigger 的工作示例,或者我应该做什么的任何其他想法?

最佳答案

您是否使用 selenium webdriver 来运行此测试?听起来您正在尝试运行需要 javascript 来查看某些元素的场景,而不使用支持 javascript 的驱动程序。

在您的 .feature 文件中,您所要做的就是在场景之前添加这一行:

@javascript
Scenario: My Scenario
When blah blah blah
...

@javascript 标签告诉 capybara 使用 selenium-webdriver 来运行测试。它将启动 firefox 并通过测试——允许所有 javascript 功能正常工作。这会大大减慢测试速度,因此只有在绝对需要测试 ajax-y 和 javascript-y 行为时才使用它。

如果还是不行你可以使用这个步骤:

Then show me the page
When I select the signin link

这将以该页面的当前状态在新浏览器中为您打开该页面,以便您进行检查。

关于ruby - capybara 找不到 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5236021/

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