0

我正在使用 Rails 4.1 和 Pundit gem。我为我的 UserPolicy 类创建了一个 UserPolicyTest 类。但是当我运行 rake test 时,类中的所有测试都没有运行。我也在尝试使用迷你测试。我找不到任何关于父类应该是什么的文档。我也尝试过扩展 MiniTest::Unit:TestCase 但这也不起作用。下面是 test/policies 文件夹中的测试类。名称是 user_policy_test.rb。我删除了文件中的一些测试以节省空间。

require 'test_helper'

class UserPolicyTest < ActiveSupport::TestCase

  def setup
    @user = users(:regularuser)
    @admin = users(:admin)
    @admin.role = :admin
  end

  def test_index
    policy = UserPolicy.new @admin, nil
    refute policy.index?
  end
end
4

1 回答 1

0

我想我找到了答案。似乎使用 minitest,rake test不会在所有测试目录中运行测试。我在这里找到了一些答案:

Rails 和 MiniTest:添加额外的文件夹

我试着运行rake test:all,我的所有测试都运行了。我不确定我更喜欢哪种解决方案。我可以继续以这种方式运行,或者我可以将策略测试目录移动到模型或控制器下。

我刚刚安装了guard和guard-minitest,它实际上监控了我所有现有的测试并默认运行所有测试。所以我认为现在一切都很好。

于 2014-03-16T23:39:51.817 回答