5

我正在编写一个非常依赖屏幕抓取的网站。因为我知道屏幕抓取很容易被破坏,所以我想以某种方式收到通知,说明存在问题。

我认为可行的解决方案是为我想要支持的每个站点编写一个 rspec 测试。该测试将从每个站点打开几个远程页面,并将它们与我期望从我的爬虫中获得的输出进行比较。我还想在本地缓存的副本上运行相同的测试,这样我就知道我的代码更改是否破坏了爬虫或远程站点是否更改。我想以某种方式每天运行一次这些测试并通知我任何问题。

最终我想让它成为一颗宝石,因为这对我来说是一个反复出现的问题。我倾向于做很多刮擦,很高兴知道事情何时破裂。

所以我的问题是我对为我的代码编写测试相对较新,我不知道设置它的最佳方法是什么。

4

1 回答 1

6

查看VCR gem,它可以让您获得要测试的各种页面的本地副本,同时能够不时刷新它们,以及针对实时页面进行测试。

于 2012-11-15T19:20:53.240 回答