我在Codeschool上遵循此代码
string_extension_test.rb
gem "minitest", "~> 4.0"
require "test/unit"
require "string_extension"
assert "3".is_number?
assert !"Blash".is_number?
string_extension.rb
class String
def is_number?
if self =~/^\d+$/
true
else
false
end
end
end
我输入 ruby -I. string_extension_test.rb
但是,它表明
string_extension_test.rb:6:in `<main>': undefined method `assert' for main:Object (NoMethodError)
我试过添加include Test::Unit::Assertions
在string_extension_test.rb,它可以通过,但没有测试用例。
输出将是
Finished tests in 0.013038s, 0.0000 tests/s, 0.0000 assertions/s.
0 tests, 0 assertions, 0 failures, 0 errors, 0 skips
您可能需要将测试放在继承自Test :: Unit :: TestCase的类中。就像是:
class StringExtensionTest < Test::Unit::TestCase
def test_is_number
assert '3'.is_number?
end
def test_is_not_number
assert !'B'.is_number?
end
end
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句