我正在使用 watir webdriver 对网页进行一些自动化测试。这些页面有许多图像,当用户将内容滚动到 View 中时,这些图像会被延迟加载(使用jquery延迟加载插件)
我在做
10.times do
browser.send_keys :space
end
ScrollView 中的项目并且加载正常 我也这么做
browser.div(:id => 'footer').wd.location_once_scrolled_into_view
将其滚动到底部 然后我就这样做
browser.screenshot.save
这似乎没有捕获任何通过 jquery 插件延迟加载的图像。
如何捕获整个页面
最佳答案
您可以做的最简单的事情就是滚动到页面底部。计算图像数,发送空格
,再次计算图像数。如果图像数量增加,请再次发送空格
。如果数字相同,则您已加载所有图像。
类似这样的东西(未经测试):
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
关于ruby - 如何在延迟加载图像的网页上使用 watir webdriver 捕获屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12059906/