如何从rspec控制器测试中省略一些东西?

时间:2010-01-24 06:16:38

标签: ruby-on-rails testing rspec functional-testing

在我的RSpec控制器测试中,我正在尝试测试调用子函数的特定操作。但我不希望测试包含对该子功能的调用。 (它会引发一个在我的开发环境中无法修复的错误)

当我对它进行测试时,从控制器操作中省略此子函数调用的最佳方法是什么?

感谢。

1 个答案:

答案 0 :(得分:1)

您可以在该函数的rspec测试的前块中存根该子函数调用,如此

describe "test for the main_action"
  before(:each) do
    controller.stub!(:sub_action).returns(true)
  end
end

然后,您的测试示例都不会实际调用此sub_action。

仅仅为了语义,Rspec总是在不在开发中的测试环境中运行,但我收集你的意思。