我正在使用watir webdriver对网页进行一些自动化测试。当用户将内容滚动到视图中时,页面有许多延迟加载的图像(使用jquery lazyload插件)
我在做
10.times do
browser.send_keys :space
end
要在视图中滚动项目,它会正常加载 我也做了
browser.div(:id => 'footer').wd.location_once_scrolled_into_view
将其滚动到底部 然后我做了
browser.screenshot.save
这似乎没有捕获任何通过jquery插件延迟加载的图像。
我该怎么做才能捕获整个页面
答案 0 :(得分:2)
您可以做的最简单的事情是滚动到页面底部。计算图像,发送space
,再次计算图像。如果图像数量增加,请再次发送space
。如果数字相同,则表示您已加载所有图像。
像这样(未经测试):
old_image_count = 0
new_image_count = browser.imgs
while old_image_count < new_image_count
old_image_count = browser.imgs
browser.send_keys :space
new_image_count = browser.imgs
end
答案 1 :(得分:0)
而不是:
browser.screenshot.save
尝试:
browser.driver.save_screenshot("<path>/photo.jpg")