Java 硒负荷试验
我正在编写一个java代码来使用selenium进行加载测试。我有一个文本文件,其中包含我用于测试的网站的URL。我希望我的应用程序读取文本文件,并显示文本文件中每个url的加载时间。我怎么做 此代码适用于两个网站,但如何读取包含多个网站的文本文件并获得加载时间Java 硒负荷试验,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,我正在编写一个java代码来使用selenium进行加载测试。我有一个文本文件,其中包含我用于测试的网站的URL。我希望我的应用程序读取文本文件,并显示文本文件中每个url的加载时间。我怎么做 此代码适用于两个网站,但如何读取包含多个网站的文本文件并获得加载时间 package webauto; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; public clas
package webauto;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class WebAuto {
public static void main(String[] args) {
WebDriver firefoxDriver=new FirefoxDriver();
long start = System.currentTimeMillis();
firefoxDriver.get("http://www.google.com");
long finish = System.currentTimeMillis();
long totalTime = finish - start;
System.out.println("Total Time for page load - "+(totalTime/1000)+"s");
long start1 = System.currentTimeMillis();
firefoxDriver.get("http://www.ebay.com");
long finish1 = System.currentTimeMillis();
long totalTime1 = finish1 - start1;
System.out.println("Total Time for page load - "+(totalTime1/1000)+"s");
}
}
您可以执行如下操作,假设文本文件中的每一行都指向网站链接,则在filePath变量中传递文本文件的路径:-
WebDriver firefoxDriver=new FirefoxDriver();
try {
BufferedReader reader= new BufferedReader(new InputStreamReader(new FileInputStream(filePath), "Cp1252"));
String websiteLink;
while ((websiteLink = reader.readLine()) != null) {
long start = System.currentTimeMillis();
firefoxDriver.get(websiteLink);
long finish = System.currentTimeMillis();
long totalTime = finish - start;
System.out.println("Total Time for page load - "+(totalTime/1000)+"s");
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
作为一种负载测试工具,最好使用Jmeter,但在某些情况下,特别是当您为AJAX丰富的应用程序编写测试或需要模拟真实用户场景时,有必要结合Jmeter的优点,这比Selenium更适合生成负载和收集性能指标,以及Selenium,这更适合与网页交互。当然,建议使用Blazemeter,作为运行测试的基于云的解决方案
您可以在此处找到此解决方案的详细信息:如果您的目标是纯粹测试页面在单个浏览器会话中的加载方式,而不是模拟用户加载模式,则可以使用selenium使用用户浏览器移动代理。您可以用所选语言解析.har文件以确定页面加载时间。看看这个,它会告诉您如何读取文本文件。