Ros*_*oss 15 ruby cucumber factory-bot
使用FactoryGirl以正确的顺序获取所有鸭子很麻烦.
设置极简主义的rails应用程序(3.0.11),factory_girl_rails(1.4.0),factory_girl(2.3.2)和cucumber-rails(1.2.1)以及ruby-1.8.7-p352.
黄瓜测试是:
Feature: a
Scenario: test factory-girl
Given the following user exists:
| name | email |
| Brandon | brandon@example.com |
Run Code Online (Sandbox Code Playgroud)
结果是这样的:
cucumber
Using the default profile...
"Adam Advertiser"
"a@b.com"
#<User id: nil, name: nil, created_at: nil, updated_at: nil, email: nil>
Feature: a
Scenario: test factory-girl # features/users.feature:2
Given the following user exists: # factory_girl-2.3.2/lib/factory_girl/step_definitions.rb:100
| name | email |
| Brandon | brandon@example.com |
**Factory not registered: user (ArgumentError)**
features/users.feature:3:in `Given the following user exists:'
Failing Scenarios:
cucumber features/users.feature:2 # Scenario: test factory-girl
1 scenario (1 failed)
1 step (1 failed)
0m0.107s
Run Code Online (Sandbox Code Playgroud)
这似乎是一个加载序列问题.非常感谢任何帮助以实现这一目标.关心罗斯
功能/ Factories.rb因此:
FactoryGirl.define do
factory :user do
name 'Adam Advertiser'
email 'a@b.com'
end
end
pp FactoryGirl.create(:user)
require 'factory_girl/step_definitions'
Run Code Online (Sandbox Code Playgroud)
我的功能/支持/ env.rb是:
require 'pp'
require 'cucumber/rails'
require 'factory_girl_rails'
Run Code Online (Sandbox Code Playgroud)
我的GemFile是:
source 'http://rubygems.org'
gem 'rails', '3.0.11'
gem 'sqlite3'
group :development, :test do
gem 'cucumber-rails'
gem 'factory_girl_rails' # rails 3 version
end
Run Code Online (Sandbox Code Playgroud)
pag*_*gid 33
FactoryGirl.find_definitions在require 'factory_girl_rails'为我修复了类似的问题后立即调用.
请参阅无法在rails 3.0.5下运行factory_girl,意外的tCONSTANT
| 归档时间: |
|
| 查看次数: |
17120 次 |
| 最近记录: |