我正在使用Capybara / Poltergeist组合为网站编写一个测试套件,我遇到的情况是DOM似乎无法加载我尝试做的任何事情。 我可以从网站快照中看到只有页脚和页眉,但不是页面的主要组件。
例如:https://www.udemy.com/courses/business/finance/all-courses/?lang=en&ordering=newest
等页面Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app, js_errors: false, debug: false, # change this to true to troubleshoot
window_size: [1300, 1000] # this can affect dynamic layout
)
end
browser=Capybara.current_session
browser.visit "https://www.udemy.com/courses/business/finance/all-courses/?lang=en&ordering=newest"
sleep 15 ##giving it time to load
browser.save_screenshot('app/file1.png', full: true)
只显示页眉和页脚。
我想这是因为某些DOM元素是异步加载的,而且在我当前的网站上我遇到了同样的问题。
现在在这里呆了两天,有关如何正确加载页面的任何建议吗?感谢
答案 0 :(得分:1)
您很可能需要将phantomjs更新为2.0+。 PhantomJS 1.9.8,我猜你正在使用它大致相当于Safari 5 iirc,似乎不适用于udemy网站。