代码之家  ›  专栏  ›  技术社区  ›  Snehal

如何在Rails功能测试中调用不同的post到不同的控制器

  •  6
  • Snehal  · 技术社区  · 14 年前

    我想在我的功能测试中对一个不同的控制器提出一个POST请求,这个测试是为一个特定的控制器而设计的。但是ActiveController类中的post方法只接受要调用的方法,不接受要调用的控制器名称。有什么想法如何调用不同的控制器吗?

    1 回复  |  直到 14 年前
        1
  •  4
  •   databyte    14 年前

    为控制器创建测试时,使用 ActiveSupport::TestCase ,可以设置不希望推断出要测试的控制器。

    因此,您可以为当前控制器的测试添加另一个类,在新的类中设置要测试的控制器,并实现您的测试用例。

    您没有提供代码,因此我无法提供编码解决方案,但这里有一篇关于在rspec下测试控制器上所有方法的博客文章: http://blog.wolfman.com/articles/2007/7/28/rspec-testing-all-actions-of-a-controller

    [就我个人而言,我离开了RSPEC/测试单元进行控制器测试,而不是路线检查和模糊测试。对于涉及系统多个部分的东西,我更喜欢集成测试(例如cumber)。