我尝试运行这个最简单的单元测试:
test "the truth" do
assert true
end
像这样:
ruby -Itest test/unit/my_model_test.rb
(文件中只有一个测试,实际上在整个网站中)
它失败并显示以下消息:
ActiveRecord::RecordNotUnique: SQLite3::ConstraintException: column email is not unique: INSERT INTO "users"... [some values to insert here]
现在我有一个名为“用户”的表,但除此之外,我从未要求对其进行任何测试,我甚至没有这样的测试。这个错误来自哪里?我该如何运行我的测试?
编辑:“用户”表来自设计宝石,如果这有帮助
答案 0 :(得分:10)
来自http://guides.rubyonrails.org/testing.html
默认情况下,Rails会自动加载所有灯具 您的单元和功能测试的test / fixtures文件夹。载入中 涉及三个步骤:
- 从与灯具相对应的表格中删除所有现有数据
- 将灯具数据加载到表格中
- 将灯具数据转储到 如果您想直接访问它,请使用变量
所以我认为你需要检查那些灯具。另外我建议你阅读那个教程。写得很好。