我正在尝试在角度应用程序上运行功能测试,但他们使用poltergeist驱动程序仍然失败。原因似乎是因为字面上使用了数据绑定语法。例如,在poltergeist下,对于以下链接,{{userName}}将显示为'用户名',
<a href="/path/to/somewhere">{{userName}}</a>
find(:link, text: 'User Name').click
失败,但find(:link, text: '{{userName}}').click
有效。
在selenium驱动程序下,find(:link, text: 'User Name').click
正常工作。
我想使用poltergeist,以便我可以将它们作为整个测试套件的一部分运行并整合到CI中,这就是阻止它。
以下是env.rb中的Cucumber设置。
require 'cucumber/rails'
require 'capybara/poltergeist'
Capybara.register_driver :poltergeist_debug do |app|
options = { inspector: true, js_errors: false, timeout: 180, phantomjs_options: ['--load-images=no', '--ignore-ssl-errors=yes'] }
Capybara::Poltergeist::Driver.new(app, options)
end
Capybara.default_wait_time = 30
Capybara.javascript_driver = :poltergeist_debug
Capybara.default_driver = :poltergeist_debug
DatabaseCleaner.strategy = :truncation
DatabaseCleaner.clean
Cucumber::Rails::Database.javascript_strategy = :truncation
任何帮助都会非常值得赞赏。