我正在编写一个flakey第三方API的包装器,并希望通过某种方式来测试我的代码的错误处理。
当人们想要测试以下内容时,他们会做什么:
有没有正确的方法呢?现在我只是使用测试主机,添加mod_rewrite规则,如:
RewriteRule ^500.html$ / [R=500,L,NE]
RewriteRule ^501.html$ / [R=501,L,NE]
RewriteRule ^404.html$ / [R=404,L,NE]
然后我确保我的代码正确处理这些用例,但感觉不对,并且无法测试超时错误。
答案 0 :(得分:0)
如果你要测试那样的路线,我强烈建议将rspec和capybara结合起来。 rspec框架提供了很大的灵活性,高用户群为您提供了大量的入门机会。
答案 1 :(得分:0)
我建议您使用mocha(rSpec中的默认值),rr,flexmock等来模拟/存根api请求。还有用于处理HTTP请求的特殊模拟库,但我不确定您是否可以模拟整个响应或仅体。