在视图页面中,人们使用表单标记帮助程序和链接帮助程序等。
如果我重命名控制器或操作,我的视图页面可能会中断。
如何针对此类破损单元测试与视图相关的标签?
答案 0 :(得分:1)
因此术语“单元测试”通常保留用于一次只测试一个应用程序的测试 - 您测试一个视图并独立于相关的控制器和模型进行测试。
但正如您所发现的那样,如果您隔离测试,您可以打破两者之间的交互,并且仍然通过所有单元测试。
这就是为什么让整个应用程序协同工作的测试很重要。这些有时被称为功能,集成或验收测试(我认为区分这些术语而不是YMMV非常有用。)
这通常使用像capybara或webrat这样的浏览器模拟器来完成,这样您就可以准确地使用应用程序用户在浏览器中的用途。他们需要不同于单元测试的技术,因此您最终不会进行非常脆弱的测试或测试,这些测试或测试需要花费很长时间才能运行而不会为所花费的时间提供额外的价值。
您可以使用各种测试框架来驱动水豚,包括RSpec。许多人使用RSpec进行单元测试,并使用Cucumber进行集成测试。我强烈推荐The RSpec Book,它也涵盖了Cucumber以及不同的测试方法以及何时应该使用它们。