Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.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 如何获取网页中当前AJAX调用的列表,以及如何以编程方式跟踪(如果已完成)_Java_Testing_Selenium_Webdriver - Fatal编程技术网

Java 如何获取网页中当前AJAX调用的列表,以及如何以编程方式跟踪(如果已完成)

Java 如何获取网页中当前AJAX调用的列表,以及如何以编程方式跟踪(如果已完成),java,testing,selenium,webdriver,Java,Testing,Selenium,Webdriver,我有一个有趣的测试问题。 我的要求是在网站上进行性能测试 在这里发布以获取加载网页所需的实时时间(我正在测试)。我在这里所指的“实时”一词是指完成所有(初始)AJAX调用(带有一些响应)所花费的总时间。我想到了使用页面加载事件。 但这种方法不能提供实时性。 任何关于如何做的建议,任何参考资料都是非常棒的 我的环境:Java和WedDriver。用时间戳标记请求对象,并在收到相应响应时从系统时间中减去时间戳 根据您的方法,您可以在服务器端使用带有负载和解复用器的通用请求/响应对象。然后,这些通用

我有一个有趣的测试问题。
我的要求是在网站上进行性能测试

在这里发布以获取加载网页所需的实时时间(我正在测试)。我在这里所指的“实时”一词是指完成所有(初始)AJAX调用(带有一些响应)所花费的总时间。我想到了使用页面加载事件。
但这种方法不能提供实时性。
任何关于如何做的建议,任何参考资料都是非常棒的



我的环境:Java和WedDriver。

用时间戳标记请求对象,并在收到相应响应时从系统时间中减去时间戳

根据您的方法,您可以在服务器端使用带有
负载和解复用器的通用请求/响应对象。然后,这些通用对象可以包含自动注册发送和接收时间的代码,并向客户机提供花费的时间。使用这种方法,聚合整个页面加载所花费的时间有点棘手,但我认为这并非不可能——如果请求也被标记为原始页面,RPC代理可能会跟踪这一点

如果您提供一些具体的设置/代码示例,我可能会更精确


干杯,

正如大家所说,WebDriver不是为了性能。但是,请参阅下面我有时使用的方法

如果可以捕获某个特定webelement的性能,则以下代码将起作用,可以是
div
span

1使用任何秒表。我用的是阿帕奇秒表

import org.apache.commons.lang3.time.StopWatch;
2初始化变量

StopWatch timer = new StopWatch();
3启动计时器,在下一行中导航到您的页面。我更喜欢
driver.navigate().to()
而不是
driver.get()
,因为我觉得这样可以减少调用新URL的其他处理时间

timer.start();
driver.navigate().to(URL); 
4等待可以指定页面加载完成的特定元素。一旦它出现,在下一行停止计时器

new WebDriverWait(driver, 10).until(ExpectedConditions. presenceOfElementLocated(By.className("demoClass")));
timer.stop();
System.out.println("timer.getTime() + " milliseconds");
附加说明:如果您想知道任何特定webapge加载的网络调用的加载时间,请使用类似于
phantomJS
的webkit或类似于
browsermobproxy
的东西。它将在HAR/JSON文件中返回网络调用。解析这些文件,你可能会得到你的时间


希望这能有所帮助。

Selenium不是一个性能测试框架。我知道它确实为性能测试提供了实用工具。我想知道当页面加载时,完成AJAX调用需要多少时间。请让我知道,如果有任何方法可以帮助我获得总时间。你知道Speedtracer-?