gpt4 book ai didi

Ruby:类 `_run_suite' 的未定义方法 `Test::Unit::Runner'

转载 作者:数据小太阳 更新时间:2023-10-29 08:37:46 24 4
gpt4 key购买 nike

我正在尝试使用命令行命令 ruby​​ unit_test.rb 运行此代码:

# unit_test.rb
require 'test/unit'
class TestWordsFromString < Test::Unit::TestCase
def test_smth
assert_equal([], [])
end
end

我收到以下错误:

Warning: you should require 'minitest/autorun' instead.
Warning: or add 'gem "minitest"' before 'require "minitest/autorun"'
From:
/Users/User/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:1:in `<top (required)>'
unit_tests.rb:1:in `<main>'
MiniTest::Unit::TestCase is now Minitest::Test. From /Users/User/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit/testcase.rb:8:in `<module:Unit>'
/Users/User/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:676:in `<class:Runner>': undefined method `_run_suite' for class `Test::Unit::Runner' (NameError)
from /Users/User/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:261:in `<module:Unit>'
from /Users/User/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:15:in `<module:Test>'
from /Users/User/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:7:in `<top (required)>'
from /Users/User/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Users/User/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from unit_tests.rb:1:in `<main>'

我尝试过的:1. 添加require 'minitest/autorun'
2. 使用 bundle exec ruby​​ unit_tests.rb 命令运行测试。
3. 安装 gem 'minitest'

这些解决方案均无效。也许我只是错误地运行了测试?我正在阅读“Programming Ruby”一书。

最佳答案

答案很简单:

Ruby 1.9.x bundles minitest not Test::Unit. Test::Unit bundled in Ruby 1.8.x had not been improved but unbundled Test::Unit (test-unit) is improved actively.

刚刚将 Ruby 1.9 安装到 RVM,现在一切正常!

关于Ruby:类 `_run_suite' 的未定义方法 `Test::Unit::Runner',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25713491/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com