运行Rails测试时无法理解SQLException

时间:2018-11-20 21:11:38

标签: ruby-on-rails sqlite

我有一个Rails应用,我开始添加单元测试。我的问题是,即使当我运行一个空测试时,我也会有一个SQLException:

require 'test_helper'

class UserMailerTest < ActionMailer::TestCase
  test "the truth" do
    assert true
  end
end

输出为:

Run options: --seed 64346

# Running:

E

Error:
UserMailerTest#test_the_truth:
ActiveRecord::StatementInvalid: SQLite3::SQLException: no such table: products: DELETE FROM "products"

bin/rails test test/mailers/user_mailer_test.rb:5

Finished in 0.233057s, 4.2908 runs/s, 0.0000 assertions/s.

我的代码中没有“产品”表。 git grep -i product一无所有。

有帮助吗?

1 个答案:

答案 0 :(得分:1)

检查测试文件夹中的夹具文件products.yml。如果它在那里并且您没有产品记录器,则会出现这些错误,因为默认情况下,Rails会尝试使用该文件中的数据填充产品表。