2012-11-09 30 views
1

我的Rails应用程序向Web服务的调用。在所有黄瓜测试Web服务虚拟来电

我使用FakeWeb宝石假货在一些测试这些电话通过注册URI是这样的:

FakeWeb.register_uri(:get, "http://webservice.com/param?value=a", :response => fake_response) 

如何设置在整个测试环境中,该假登记,而不是设置它为每个测试手动吗?

回答

0

spec/support/文件,作出register_uri呼叫的Before块中:

Before do 
    FakeWeb.register_uri(:get, "http://webservice.com/param?value=a", :response => fake_response) 
end 

我用这种伎俩来设置使用webmock模拟反应,它像一个魅力。

1

最有可能,将在您的规格/ spec_helper.rb文件就可以了。我没有使用FakeWeb,我自己,但这是你放置任何全局初始化的地方。

+0

感谢您的帮助。尝试了你的建议,但没有运气。 – Myxtic

+0

+1的意见。 – Myxtic

1

采取看看VCR ruby​​gem。

它记录了你的测试套件的HTTP交互和试运行期间重播他们。

+0

对于该建议+1。 – Myxtic