#ruby #testunit #minitest
#ruby #testunit #minitest
Вопрос:
Я использую Ruby 1.9.2 (ruby -v дает: ruby 1.9.2p290 (2011-07-09 редакция 32553) [x86_64-linux]), и я пытаюсь заставить это работать:
require 'test/unit'
class TestStartup < Test::Unit::TestCase
def self.startup
puts "startup"
end
def test1
puts "in test1"
end
end
когда я запускаю его, я получаю
Loaded suite test_startup
Started
in test1
.
Finished in 0.000395 seconds.
1 tests, 0 assertions, 0 failures, 0 errors, 0 skips
Мне было трудно найти документацию по этой функции, кроме разрозненных сообщений здесь, на SO и тому подобное.
И да, я хочу использовать эту функцию, а не настройку.
TIA
Комментарии:
1. test-unit.rubyforge.org/test-unit/Test/Unit/TestCase.html упоминает, что это так
def self.startup
, а неdef startup
так, так что проблема была не в этом.
Ответ №1:
Значит, вы должны использовать драгоценный камень Test::Unit? Возможно, это более старая версия, которая не поддерживает эту функцию?
Комментарии:
1. У меня был установлен тестовый модуль, но поскольку мой код не выполнял то, что я хотел, я попытался удалить его, чтобы посмотреть, поможет ли это, но это не имело никакого значения. Итак, если это работает в тестовом модуле, как мне на самом деле использовать test-unit, а не test / unit? Когда я использую «require ‘test-unit’ (после установки gem, test-unit), я получаю сообщение об ошибке.
2. Неважно, нашел страницу, которая показывает, как это сделать: gem «test-unit» (затем) требует ‘test / unit’
3. @user119282: если ваш ответ был решен, не забудьте отметить этот ответ как принятый, когда вы сможете это сделать.
4. У меня была похожая проблема. Мне пришлось применить решение пользователя 119282 о вызове gem «test-unit» везде в моем коде, где мне требовался «test / unit». В противном случае, если бы в первом месте, где был указан требуемый код, отсутствовал вызов gem «test-unit», тогда он все равно использовал бы старый код и не работал.
Ответ №2:
Ruby 1.9.2 по умолчанию использует Minitest вместо Test::Unit, так что, возможно, эта функция отсутствует в Minitest.
Комментарии:
1. То, что вы сказали, похоже на правду.
2. Я рад, что нашел этот ответ, иначе мне пришлось бы беспокоить человека, сидящего рядом со мной. Спасибо!