log*_*han 5 capybara rspec-rails ruby-on-rails-3.2
我正在为rspec测试创建一个示例应用程序,我按照以下步骤 在Gemfile中:
gem "rspec-rails", :group => [:test, :development]
group :test do
gem "factory_girl_rails"
gem "capybara"
gem "guard-rspec"
end
Run Code Online (Sandbox Code Playgroud)
然后执行以下步骤:
在我的spec_helper文件中添加了"require capybara/rspec"
创建了一个样本测试,如下所示:
require 'spec_helper'
describe "Users" do
describe " List users" do
it "List all users" do
get users_path
page.has_content?('List Users')
end
end
end
Run Code Online (Sandbox Code Playgroud)
但它不起作用,得到以下错误
undefined local variable or method `page'
Run Code Online (Sandbox Code Playgroud)
*我怀疑我没有正确配置水豚,让我知道配置水豚的正确方法.
由于你没有在你的Gemfile中为Capybara指定一个版本,我假设你有版本>= 2.0,这意味着任何使用的测试page应该在spec/features目录下.
有关更多信息,请查看以下链接:
如果您不想使用spec/features目录,则应该能够以feature下列方式将测试标记为:
require 'spec_helper'
describe "Users" do
describe " List users", type: :feature do
it "List all users" do
get users_path
page.has_content?('List Users')
end
end
end
Run Code Online (Sandbox Code Playgroud)
在将capybara dsl包括在spec helper之后开始工作了
config.include Capybara::DSL
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4148 次 |
| 最近记录: |