Dan*_*lin 1 unit-testing ruby-on-rails
我正在尝试设置rails测试框架但面临一些问题.我的设置如下
测试/模型/ clinic_test.rb
require 'test_helper'
class ClinicTest < ActiveSupport::TestCase
test "sample" do
clinic = clinics(:myclinic)
assert(clinic.name == 'Krishan')
end
end
Run Code Online (Sandbox Code Playgroud)
测试/装置/ clinics.yml
myclinic:
name: Krishan
Run Code Online (Sandbox Code Playgroud)
但是当我运行clinic_test rake进程时,我收到以下错误:
ActiveRecord::FixtureClassNotFound: No class attached to find
test/models/clinic_test.rb:5:in `block in <class:ClinicTest>'
Run Code Online (Sandbox Code Playgroud)
我看到数据库实际上填充了来自clinics.yml文件的样本数据.
问题出在哪儿?这是一些配置问题吗?
在fixtures:all之前,在test_helper.rb文件中添加以下行
class ActiveSupport::TestCase
self.use_transactional_fixtures = true
set_fixture_class clinics: Clinic
fixtures :all
...
end
Run Code Online (Sandbox Code Playgroud)
诊所是yml文件的名称,其中Clinic是模型的名称.