Capybara+Rspec+Rails3.1 资产在第一次请求后不再被请求
我正在使用 capybara+rspec 在 Rails 3.1 应用程序上测试我的请求,我有两个场景做完全相同的事情,无论第一个执行的那个通过,第二个永远不会通过,除非我将 config.cache_classes 设置为 false,我意识到,当在第二种情况下将其设置为 true 时,第一次请求资产后就不会再请求它们。
所发生的情况是,资产的第一个请求通常在第一次需要它们时发生,当对需要已加载资产的页面有第二个请求时,没有对它们的请求,当 Rails 位于开发环境中时,它们会被请求,并且如果已经有缓存的 Rails 返回 304。除非将 cached_classes 设置为 false,否则在测试环境中不会发生这种情况,这会破坏我的所有其他测试并使测试套件非常慢。
I'm using capybara+rspec to test my requests on a rails 3.1 application, I have two scenarios doing the exact same thing, no matter what the one thats executed first passes the second never passes unless I have config.cache_classes set to false, I realized that when it is set to true on the second scenario the assets are not being requested after they are requested the first time.
What happens is that the first request of the assets happens normally when they are first needed, when theres a second request to a page that requires the assets already loaded there is no request to them, when rails is on development environment they are requested and if there are already cached rails returns a 304. This is not happening on test environment unless cached_classes is set to false, which breaks all my other tests and makes the test suite really slow.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论