在Rails 3(3.0.3)中设置测试/单元下的Shoulda

时间:2010-12-15 03:55:16

标签: ruby-on-rails ruby shoulda testunit

我已将此贴在其他地方,但没有回应。试图让Shoulda在Rails 3.0.3(1.9.2)中的Test / Unit中工作。当我尝试运行测试(下面复制)时,我收到此错误:

test / unit / practice_member_test.rb:4:在<class:PracticeMemberTest>': undefined method上下文中为PracticeMemberTest:Class(NoMethodError)

请注意,我还有另一个带Rspec的Rails 3项目,包括Shoulda,它通过Rspec工作正常。在失败的项目中,我尝试在测试帮助程序中放置“require' Shoulda'”无效,但是当我运行调试器并输入Shoulda时,找到了对象,因此正在加载库。

这是我的测试:

要求'test_helper'

class PracticeMemberTest&lt;测试::单位:: TestCase的   语境“实践成员”做     应该“让全球实践成员计算不包括演示实践”吗       assert_equal PracticeMember.practice_members_global_count,0

  practice = Factory.create(:practice_one)

  practice_member = Factory.create(:practice_member)
  practice_member.practice_id = practice.id
  practice_member.save
  practice_member = Factory.create(:practice_member)
  practice_member.practice_id = practice.id
  practice_member.save

  assert_equal PracticeMember.practice_members_global_count, 2
end

端 端

必须是我忽视的东西,因为我没有见过有同样问题的人。

1 个答案:

答案 0 :(得分:0)

您是否尝试将以下内容添加到config / environment.rb文件中:

  Rails::Initializer.run do |config|
    config.gem "shoulda", :lib => "shoulda"
  end

然后

 $ rake gems:install
 $ rake gems:unpack

正如documentation

中所述