gpt4 book ai didi

ruby-on-rails - 何时在 RSpec + Capybara 中使用 XPath

转载 作者:行者123 更新时间:2023-12-03 16:54:08 24 4
gpt4 key购买 nike

什么时候使用 XPath,为什么?

以下两行均匹配具有“发布”值的提交按钮。使用 XPath 有什么优点吗?

it { should have_selector("input[type=submit][value='Post']") }

it { should have_xpath("//input[@value='Post']") }

此外,在 RSpec 中是否存在使用 XPath 至关重要的情况?

最佳答案

XPath 允许更具体地“指定”您所指的元素,而仅“按名称”选择元素有时会使您不清楚实际指的是哪个元素。尤其是在复杂的页面上,经常会收到 Capybara 的提示“多元素匹配”。在这种情况下,您可以使用 XPath 来指定您实际指的是哪个元素。

如果你有歧义,你也可以添加

match: :prefer_exact

“引导”选择,例如如果您的页面上同时存在“密码”和“密码确认”字段,您可以输入类似

fill_in 'Password', with: @visitor[:password], match: :prefer_exact

我的个人经验是,通过使用 prefer_exact,您可以在很大程度上解决歧义,因此您很少需要 XPath...

关于ruby-on-rails - 何时在 RSpec + Capybara 中使用 XPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21162204/

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