Ruby on rails 如何分离进行api调用的Rails Rspec测试
我正在编写rspec特性测试,以进行实时api调用。我希望能够使用简单的命令rspec运行所有非api测试,然后以某种方式单独调用实时api测试。也许有一种方法可以使用ARGV,或者从通用rspec名称空间中排除一些测试,并且仍然具有完整的特性测试功能。有什么想法吗?您需要标记API规范,请查看RSpec文档: 如果要使用环境变量进行筛选:Ruby on rails 如何分离进行api调用的Rails Rspec测试,ruby-on-rails,api,rspec,Ruby On Rails,Api,Rspec,我正在编写rspec特性测试,以进行实时api调用。我希望能够使用简单的命令rspec运行所有非api测试,然后以某种方式单独调用实时api测试。也许有一种方法可以使用ARGV,或者从通用rspec名称空间中排除一些测试,并且仍然具有完整的特性测试功能。有什么想法吗?您需要标记API规范,请查看RSpec文档: 如果要使用环境变量进行筛选: spec\u helper.rb RSpec.configure do |c| c.filter_run_excluding api: true unl
spec\u helper.rb
RSpec.configure do |c|
c.filter_run_excluding api: true unless ENV['ALL']
end
通过此设置,rspec spec
命令将过滤掉标记为api
的所有规范
如果您想运行整个套件,包括API规范
ALL=true rspec spec
为什么不使用vcr gem来记录API响应。所以它不需要再次点击api,againI也考虑过这一点,但我实际上想定期测试live api,以确保它们的方法没有改变,以及我的代码是否正常工作。这是一个很好的解决方案!我可以证实这个可爱的小方法非常有效。谢谢你,米哈伊尔。