如何获取网站网页上每个元素的加载时间。
为了获得页面加载时间,我们可以使用:
long start = System.currentTimeMillis();
driver.get(urls[i]);
long finish = System.currentTimeMillis();
long totalTime = (finish - start)/1000;
但是,计算每个图像,css和js的加载时间并不是一个好主意,而不是我们可以使用“http://www.webpagetest.org/”。
所以最后我的问题是如何使用selenium webdriver执行上述任务?
答案 0 :(得分:1)
Selenium不是获取任何元素加载时间的好工具,正如你在selenium doc中看到的那样,findElement(By by)本身就有一些等待时间。
<强> WebElement findElement(By by) 强>
使用给定方法查找第一个WebElement。此方法受执行时有效的“隐式等待”时间的影响。 findElement(..)调用将返回匹配的行,或重复尝试直到达到配置的超时。 findElement不应该用于查找不存在的元素,使用findElements(By)并断言零长度响应。
我建议您使用jmeter来获取它。 :)
答案 1 :(得分:1)
不,你不能使用Selenium。没有合理的理由我可以想到你需要在页面上的每个元素的加载时间。在您查找几个元素的时候,将加载所有元素。
您最好考虑测量DOM加载的时间等等,您可以在Chrome devtools或其他工具的“网络”标签中执行此操作。
答案 2 :(得分:0)
您可以使用Google Chrome中的“Inspect element”选项或Firefox中的firebug。 然后你必须点击“网络”,你只需刷新页面,你会看到一个时间线,显示所有脚本和其他文件的加载时间。
编辑:对不起我看到你的问题是关于Selenium webdriver,我没有经验。