3

我已经在其他地方发布了这个,但没有任何回应。试图让应该在 Rails 3.0.3 (1.9.2) 中的测试/单元中工作。当我尝试运行测试(复制如下)时,我收到此错误:

test/unit/practice_member_test.rb:4:in <class:PracticeMemberTest>': undefined methodcontext' for PracticeMemberTest:Class (NoMethodError)

请注意,我有另一个带有 Rspec 的 Rails 3 项目,包括 Shoulda 也可以通过 Rspec 正常工作。在失败的项目中,我尝试在测试助手中放置“require 'should'”但无济于事,但是当我运行调试器并键入 Shoulda 时,找到了对象,因此正在加载库。

这是我的测试:

需要'test_helper'

class PracticeMemberTest < Test::Unit::TestCase context "practice member" do
should "get global practice member count not including Demo Practice" do 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

结束结束

一定是我忽略的东西,因为我没有看到任何人遇到同样的问题。

4

1 回答 1

0

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

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

然后

 $ rake gems:install
 $ rake gems:unpack

正如文档中所建议的那样?

于 2010-12-15T04:29:10.030 回答