2010-02-05 158 views
1

所以我正在测试我的抓取工具的各个部分,现在我打了一个残端:嘲笑实际的请求。如何测试爬虫?即︰模拟网络请求

我不想每次运行规范时提出请求。

任何人都曾尝试在测试助手中启动webrick服务器?

喜欢的东西

myserver = SomeServerLib.start('localhost', some_port) 
myserver.serve_directory(a_directory_with_some_html_files) 

谢谢!

回答

3

您可以模拟HTTP请求并使用期望值。 请参阅Webmock项目。

0

您还可以使用FakeWeb,它允许您在测试期间提供预设的HTTP响应。

http://fakeweb.rubyforge.org/

(作为一个方面说明,你应该考虑的替代品,如果你正在使用的Net :: HTTP。这是非常缓慢的。退房EM-http请求)