【问题标题】:Capybara::ElementNotFound on all specs only on TravisCapybara::ElementNotFound 仅适用于 Travis
【发布时间】:2023-03-15 05:47:02
【问题描述】:

我使用 selenium、capybara 和 rspec 进行测试,我注意到所有测试都在本地通过,但在 travis 上,所有测试都失败,每个规范都出现此错误。

Capybara::ElementNotFound:

我不确定这里出了什么问题,这是 .travis.yml 上的规范运行器

script:
- xvfb-run bundle exec rspec spec/features/*.rb

spec_helper.rb 这是我的配置:

RSpec.configure do |config|
  config.treat_symbols_as_metadata_keys_with_true_values = true
  config.use_transactional_fixtures = false
  config.infer_base_class_for_anonymous_controllers = false1
  config.filter_run_excluding :broken => true
  config.render_views

Capybara.default_driver = :selenium
Capybara.default_selector= :css
Capybara.run_server = true
Capybara.default_wait_time = 30

【问题讨论】:

    标签: ruby-on-rails ruby selenium rspec capybara


    【解决方案1】:

    嗯,我找到了问题的原因和解决方案。

    原因:我们使用响应式设计,显然 travis 使用了一个小窗口尺寸,这开启了移动设计,这就是它找不到元素的原因。

    解决方案

    script:
    - xvfb-run --server-args="-screen 0 1024x768x24" bundle exec rspec spec/features/*.rb
    

    您基本上将窗口大小设置为更大的大小。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多