我想在Rails的lib目录中测试代码。我使用RubyTest在Sublime Text2中工作。我的图书馆在 lib/my_lib.

module MyLib
    def self.get_zero
        0
    end
end

我的单元测试在 test/unit/lib/my_lib

require 'test/unit'
require 'my_lib/my_class_to_test'

module MyLib
    class MyClassToTestTest < Test::Unit::TestCase
        def test_zero
            assert_equal(0, MyLib::get_zero)
        end
end
end

当我用命令行运行它们时,单元测试通过:

rake test:units

为了节省时间,我可以使用此命令行仅运行我的单元测试:

ruby -I"lib" test/unit/lib/my_lib/my_class_to_test_test.rb

我想将RubyTest与Sublime Text2一起使用,但是当我使用它时(Maj+Ctrl+R)我得到错误 :

test/unit/lib/my_lib/my_class_to_test_test.rb:3:in `require': no such file to load -- my_lib/my_class_to_test (LoadError)
    from test/unit/lib/my_lib/my_class_to_test_test.rb:3

RubyTest如何加载路径中的lib目录?

有帮助吗?

解决方案

Sublime Text2中RubyTest的配置文件在这里:

~/.config/sublime-text-2/Packages/RubyTest/RubyTest。崇高-设置

我补充说 lib-I 选项在 ruby_unit_exec 像那样:

"ruby_unit_exec": "ruby -Ilib:test"`

问题已修复。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top