与Selenium的Capybara花费太长时间来加载页面导致Net :: ReadTimeout错误

问题描述 投票:-1回答:1

我目前正在运行测试应用程序的不同功能的水豚规格。运行我的规格时,似乎没有足够快地到达页面进行测试。我目前有三个规格,最后让它们全部因同样的错误而失败需要9分钟。以下是运行规范的结果

Randomized with seed 38457
Capybara starting Puma...
* Version 3.11.4 , codename: Love Song
* Min threads: 0, max threads: 4
* Listening on tcp://127.0.0.1:50109
FFF

Failures:

1) Successful source is created
 Got 0 failures and 2 other errors:

 1.1) Failure/Error: visit ('/clients/new')

      Net::ReadTimeout:
        Net::ReadTimeout
      # ./spec/qa/variables.rb:12:in `login_user'
      # ./spec/qa/successful_source_spec.rb:7:in `block in (root)'

 1.2) Failure/Error: @io.to_io.wait_readable(@read_timeout) or raise Net::ReadTimeout

      Net::ReadTimeout:
        Net::ReadTimeout

另请注意,我使用的是无头镀铬的硒。有什么办法可以让页面加载更快,以便我可以测试吗?这也是这些规格第一次运行。

selenium rspec capybara puma
1个回答
1
投票

我决定快速解决这个问题。事实证明,在测试超时之前,rails服务器没有足够快地连接到页面。我决定将spec_helper.rb中的默认等待时间更改为120秒。第一次运行规范需要花费更长的时间,但最终它们将连接并顺利运行。我不认为这是最佳做法,但它确实提供了快速修复以开始测试您的规格。

© www.soinside.com 2019 - 2024. All rights reserved.