【发布时间】:2011-12-11 23:49:17
【问题描述】:
还是我误会了什么?
部分居住在:
app/views/admin/command_templates/_fillerup.html.erb
此规范通过(视图目录中没有“fill”或“_fill”):
describe "GET fillerup" do
it "assigns some stuff and renders a partial" do
should render_template "admin/command_templates/_fill" # I expected failure
should render_template "admin/command_templates/_fillerup" # "Correct" test
end
end
这失败了(正如我所料):
describe "GET fillerup" do
it "assigns some stuff and renders a partial" do
should render_template "admin/command_templates/_fillerupp" # extra "p"
end
end
它表现就像它在路径上做一个start_with?,也许是为了忽略扩展,或者......?
rspec-rails 2.7.0,rails 3.1.2;可根据要求提供其他信息。
验证行为是否存在(或不存在)将有助于进行健全性检查。
【问题讨论】:
-
这与您的问题有些正交,但请注意,这些测试完全没有用。您通常不应该关心正在渲染什么部分,或者分配了什么;一旦到达控制器级别,您唯一应该测试的是用户看到的内容——所以只需测试呈现的 HTML(最好使用 Cucumber,而不是控制器规范)。
-
@MarnenLaibow-Koser 显示的 sn-ps 不代表实际测试;他们是SSCCEs 来解释我看到的行为。反正这部分已经不在测试中了。
标签: ruby-on-rails rspec ruby-on-rails-3.1 rspec-rails