gpt4 book ai didi

ruby-on-rails - capybara 选择 ("radio button") 不工作

转载 作者:行者123 更新时间:2023-12-05 00:27:12 25 4
gpt4 key购买 nike

我的观点的快照:

<%= form_for @request do |f| %>
<div class="form-group">
<%= f.radio_button(:item, "Snow/waterproof shell (upper)") %>
<%= f.label(:item, "Snow/waterproof shell (upper)") %>
</br>
<%= f.radio_button(:item, "Headlamp") %>
<%= f.label(:item, "Headlamp") %>
</div>

然而,在我的 Rspec 集成测试文件 (spec/requests/requests_spec.rb) 上,当我编写时(注意选择单选按钮是用户从列表中请求项目的表单的一部分,并且测试针对结果页面提交后,应指明用户请求的项目)。我正在使用 gem 'rspec-rails', '2.13.1'
describe "Requests" do
subject { page }

describe "new request" do
before { visit root_path }

describe "with valid information" do
before do
choose("Snow/waterproof shell (upper)")
click_button submit
end

it { should have_content("Snow/waterproof shell (upper)")
end
end
end

我总是收到错误:
←[31mFailure/Error:←[0m ←[31mchoose("Snow/waterproof shell (upper)")←[0m
←[31mCapybara::ElementNotFound←[0m:
←[31mUnable to find radio button "Snow/waterproof shell (upper)"←[0m
←[36m # ./spec/requests/requests_spec.rb:24:in `block (4 levels) in <top (required)>'←[0m

如果我尝试选择(“头灯”)或任何其他选项,则相同。聪明的人有什么想法吗?这似乎是一件很容易的事情......

最佳答案

我已经多次遇到这个问题。如果您根据 dom 中的 ID 选择表单元素,则它要可靠得多:

before do 
choose 'request_item_headlamp'
click_button submit
end

如果不查看 ID rails 会为另一个单选按钮提供什么,我就无法判断。只需在 chrome 中右键单击它,检查元素,然后将元素 ID 剪切并粘贴到您的测试中。

关于ruby-on-rails - capybara 选择 ("radio button") 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21085057/

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