如何在Rails中测试非ActiveRecord模型类在控制台中工作的代码似乎无法转换为测试套件方法是不可用的,整个事情似乎没有工作!
class CalendarEvent
def test
'Hello World'
end
end
当我启动控制台时,它工作:
irb> cal_event = CalendarEvent.new
=> #<CalendarEvent:0x007fb5e3ee9fd0>
irb> cal_event.test
=> "Hello World"
然而,当我编写一个测试时,模型似乎没有加载所有功能都不可用。
class CalendarEvent < ActiveSupport::TestCase
include TestApiHelperPackage
test 'validate hello world' do
cal_event = CalendarEvent.new
assert_equal cal_event.test, 'Hello world'
end
end
似乎它没有抓住模特我不必从
ActiveSupport::TestCase
继承吗? 最佳答案
我很惊讶它竟然跑了您在测试套装中声明类CalendarEvent
。明显没有test
方法。为什么你会用和测试类完全一样的名字来命名呢?换个名字吧:
# ⇓⇓⇓⇓ HERE
class CalendarEventTest < ActiveSupport::TestCase
include TestApiHelperPackage
test 'validate hello world' do
cal_event = CalendarEvent.new
assert_equal cal_event.test, 'Hello world'
end
end
一切都会好起来的可能您也希望
require 'calender_event'
在您的test_heler.rb
中。