【发布时间】:2011-05-19 23:23:48
【问题描述】:
大家好, 我无法在我的 ruby on rails 视图上测试表单元素的存在。我正在使用 rspec 和 have_selector 进行测试。
这是我的测试代码:
it "should always have like button for root entity" do
get :index
@entities[0..3].each do |entity|
response.should have_selector("form",
:method => "post", :action => "like/#{entity[:id]}") do |form|
form.should have_selector("input", :value => "Like")
end
end
end
这是我对特定实体的视图输出:
<th>
<form method="post" action="/like/1" class="button_to">
<div>
<input type="submit" value="Like" /><input name="authenticity_token" type="hidden" value="WEJPdFzphPFz+ld6BO8c/sMlhdfm+2Trp+3n0J8H5Cs=" />
</div>
</form>
</th>
这是我的 rspec 错误:
1) EntityController GET '索引' 实体存在于未登录用户 应该总是有喜欢的按钮 根实体 失败/错误:form.should have_selector("input", :value => “像”) 预计以下输出将包含 标签。
如果我注释掉 "form.should have_selector("input", :value => "Like")" 那么测试代码是:
it "should always have like button for root entity" do
get :index
@entities[0..3].each do |entity|
response.should have_selector("form",
:method => "post", :action => "like/#{entity[:id]}") do |form|
#form.should have_selector("input", :value => "Like")
end
end
end
我的 rspec 错误是:
1) EntityController GET '索引' 实体存在于未登录用户 应该总是有喜欢的按钮 根实体 失败/错误:response.should have_selector("form", 预期以下输出包含
标签:(只有相关部分是c/ped)
在表单元素方面,我似乎在使用 have_selector 时遇到了很多麻烦。有更好的选择还是我遗漏了一些明显的东西?
谢谢!
【问题讨论】:
伙计们,谁能帮忙解决这个问题?似乎仍然无法解决它。
标签: ruby-on-rails-3 forms testing rspec