Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 硒负荷试验_Java_Selenium_Selenium Webdriver - Fatal编程技术网

Java 硒负荷试验

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

我正在编写一个java代码来使用selenium进行加载测试。我有一个文本文件,其中包含我用于测试的网站的URL。我希望我的应用程序读取文本文件,并显示文本文件中每个url的加载时间。我怎么做

此代码适用于两个网站,但如何读取包含多个网站的文本文件并获得加载时间

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文件以确定页面加载时间。

看看这个,它会告诉您如何读取文本文件。