我有模型产品,我用<%= render @products %>
渲染它。我的模板_product.html.erb包含<%= link_to product.name, product %>
。当我在开发环境中的浏览器中访问此页面时,它会显示我的产品。
现在我正在运行我的黄瓜,它看不到我的产品。
我使用FactoryGirl“给定”创建产品,如下所示:
Given(/^(\d+) products are created$/) do |n|
n.to_i.times do
create(:product)
end
end
Then I visit my page and in "then I check it like this"
Then(/^I should see paginated products$/) do
puts Product.all
puts page.body
products = Product.all
products[0..9].each do |product|
page.should have_selector "a", text: product.name
end
end
puts Product.all打印有效的产品,但是put.body打印我的页面而没有渲染产品。
这里是我的env.rb文件:
require 'cucumber/rails'
World FactoryGirl::Syntax::Methods
ActionController::Base.allow_rescue = false
Cucumber::Rails::World.use_transactional_fixtures = true
Cucumber::Rails::Database.javascript_strategy = :truncation
为什么水豚不能渲染我的模板?
由于
更新:
虽然puts Product.all
打印了我的产品,但我视图中的<%= @products.count %>
显示0表示测试。奇怪的...