所以我正在测试我的爬虫的各个部分,现在我遇到了一个难题:模拟实际请求。
我不想在每次运行规范时都提出请求。
有人尝试过在测试助手中启动 webrick 服务器吗?
就像是
myserver = SomeServerLib.start('localhost', some_port)
myserver.serve_directory(a_directory_with_some_html_files)
谢谢!
您可以模拟 HTTP 请求并使用期望值。请参阅Webmock项目。
您还可以使用 FakeWeb,它允许您在测试期间提供预设的 HTTP 响应。
(作为旁注,如果您使用 Net::HTTP,您可能应该寻找替代方案。它非常慢。查看 em-http-request )