gpt4 book ai didi

ruby-on-rails - 是否可以用 Capybara 填写数字字段 wo/labels?

转载 作者:行者123 更新时间:2023-12-04 03:14:22 25 4
gpt4 key购买 nike

我有一个数字字段,需要一个 :product_quantity在它说 "Add to Cart" 之后有一个按钮.我的测试在不调整 number_field 的情况下工作但是当我取消注释这一行时:

product_from_shop.fill_in 'quantity', with: 5

东西爆炸了。 Capybara::ElementNotFound

在我看来是关于这一行的:

<%= f.number_field :product_quantity, value: booking.product_quantity, min: 1, max: 999, title: 'quantity' %>

我尝试了几种方法,还搜索类或 ID。非工作。没有标签,那会使我的 View 困惑。

title在其他情况下工作正常,没有表格。

另外:我正在使用 capybara webkit,因为它使用 JS。

最佳答案

fill_in 使用 :fillable_field 选择器,它会找到任何可见的输入或文本区域元素,类型提交、图像、 radio 、复选框或文件除外。它将找到那些元素的 id、名称或占位符属性,或者通过关联标签元素中的文本。由于您没有关联的标签,因此只能使用 id、name 或 placeholder 属性。假设 product_from_shop 是您用于限定此 fill_in 范围的页面上的包装元素

product_from_shop.fill_in '<something>_product_quantity', with: 5

应该通过 id 查找和填充元素 - 将取决于表单适用的模型类型(只需查看实际的 HTML 以查看分配的 id)。

如果产品数量字段是 product_from_shop 中唯一可填写的字段,您也可以这样做

product_from_shop.fill_in with: 5 # same as product_from_shop.fill_in nil, with: 5

如果这些都不适合你,你可以转向使用类似的东西

product_from_shop.find(<more complicated query>).set '5'

为了澄清您对 title 之前工作的评论 - title 属性仅在查找链接和按钮时匹配。

关于ruby-on-rails - 是否可以用 Capybara 填写数字字段 wo/labels?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42457594/

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