Ruby on rails 调用时RSpec NoMethodError应在FactoryGirl.build上无效

Ruby on rails 调用时RSpec NoMethodError应在FactoryGirl.build上无效,ruby-on-rails,rspec,factory-bot,Ruby On Rails,Rspec,Factory Bot,在我的RSpecuser\u spec.rb中,我的一个FactoryGirl工厂似乎有效,我可以在其上调用应该有效,此测试将通过(如果我在factoryuser\u name中放入一个空字符串,测试将中断) 但是,当我在FactoryGirl.build上调用上述不应有效的时,测试失败: 1) User is invalid without a name Failure/Error: FactoryGirl.build(:user, :user_name => nil).s

在我的RSpec
user\u spec.rb
中,我的一个FactoryGirl工厂似乎有效,我可以在其上调用
应该有效
,此测试将通过(如果我在factory
user\u name
中放入一个空字符串,测试将中断)

但是,当我在
FactoryGirl.build
上调用上述
不应有效的
时,测试失败:

  1) User is invalid without a name
     Failure/Error: FactoryGirl.build(:user, :user_name => nil).should_not_be_valid
     NoMethodError:
       undefined method `should_not_be_valid' for #<User id: nil, user_name: nil, created_at: nil, updated_at: nil>
     # ./spec/models/use
和我的用户模型:

class User < ActiveRecord::Base
  has_one :musician

  validates :user_name, presence: true
end
class用户
应该有效
如何工作,而
不应该有效
抛出一个
命名错误

我真的很感激任何帮助!我正在运行Rails 4、
gem“rspec Rails”、“~>2.14.1”
、以及
gem“factory\u girl\u Rails”、“4.3.0”


有一段时间我一直在试图解决这个问题,但没有成功…

不应该
有效之间使用空格:

FactoryGirl.build(:user, :user_name => nil).should_not be_valid

不应
有效
之间使用空格:

FactoryGirl.build(:user, :user_name => nil).should_not be_valid

不应
有效
之间使用空格:

FactoryGirl.build(:user, :user_name => nil).should_not be_valid

不应
有效
之间使用空格:

FactoryGirl.build(:user, :user_name => nil).should_not be_valid

谢谢,就这样。由视错觉导致的语法错误?除非我用眼角眯起眼睛,否则我看不到缺少的下划线……谢谢,就是这样。由视错觉导致的语法错误?除非我用眼角眯起眼睛,否则我看不到缺少的下划线……谢谢,就是这样。由视错觉导致的语法错误?除非我用眼角眯起眼睛,否则我看不到缺少的下划线……谢谢,就是这样。由视错觉导致的语法错误?除非我眯着眼睛看,否则我看不到缺少的下划线。。。