我将水豚从v2.18.0
升级到v3.12.0
。现在,我的一些黄瓜功能正在无缘无故地失败:
..F..............................................................................................................................................
Failing Scenarios:
cucumber features/users/login:7 # Scenario: Login
9 scenarios (1 failed, 8 passed)
44 steps (44 passed)
2m41.470s
它说1个场景失败了,但是所有步骤都通过了
这是怎么了?
如何调试此问题?
我正在使用以下gem版本:
rails (5.1.2)
cucumber (3.1.2)
capybara (3.12.0)
selenium-webdriver (3.141.0)
我正在以无头模式使用chromedriver v2.45.615355
和google chrome v72.0.3626.28-beta
运行测试
答案 0 :(得分:0)
我从
更改了CI测试脚本bundle exec cucumber
到
bundle exec cucumber -b
,我很容易看到失败的原因:
execution expired (Timeout::Error)
...
/builds/project/features/support/capybara_helper.rb:8:in `wait_until'
/builds/project/features/support/capybara_helper.rb:21:in `block_and_wait_for_requests_complete'
...
事实证明
中发生超时错误After do
block_and_wait_for_requests_complete
end
在所有等待我完成JS和机架请求的地方挂上钩。 cucumber -h
通过以下方式描述了-b
选项:
-b, --backtrace Show full backtrace for all errors.