0

我是 Rails 新手,最近一直在学习一系列教程,并希望确保我走上了测试驱动的开发路线。我遇到了如何编写这个测试的障碍。

我有两个相关的模型:TaskProject

Task belongs_to ProjectProject has_many Tasks

project显示模板中,我列出了与该模板相关tasks的所有内容project

在任务中,我有一个状态字段,我想在按下按钮时将其设置为存档,然后返回相关项目。

任何人都可以给我一个推动正确的方向来编写带有关联的测试吗?将不胜感激。

4

1 回答 1

0

你有什么样的测试设置?您使用的是 RSpec 还是 Test::Unit?至于测试关联(在 Test::Unit 中),您可以执行以下操作:

#project_test.rb
def setup
  @project = Project.new(...)
end

def test_task_association
   assert_equal(@project.tasks, [])
   task = @project.task.new(...)
   assert_equal(@project.tasks, [task])
end

我是即时输入的,所以我不会打赌语法是正确的。但它的要点应该是可以理解的。这种测试是“最低”级别的测试,也称为“单元测试”,您可以创建它来测试关联。如果您想测试模板,您可以查看“集成测试”。这些应该很有帮助: http: //guides.rubyonrails.org/testing.html

于 2013-01-24T11:30:14.427 回答