Performance 如何使Selenium WebDriver运行数小时(CHO),而不会导致崩溃/内存不足问题?

Performance 如何使Selenium WebDriver运行数小时(CHO),而不会导致崩溃/内存不足问题?,performance,testing,selenium,selenium-webdriver,webautomation,Performance,Testing,Selenium,Selenium Webdriver,Webautomation,我使用selenium-2.30.0运行一个测试(在windows上),该测试运行了很多小时(约8小时)。我使用的是FF驱动程序,但是它在45分钟或更短的时间内就耗尽了内存&测试执行只是挂起。我无法使用HTMLUnitDriver(我认为纯java解决方案就是答案)以与FF驱动程序相同的方式运行(因为它需要等待页面加载&我绝对不想在代码中加入随机线程休眠,也不想通过扩展HTMLUnitDriver来实现任何新功能) 我不能将测试用例分解为多个更小的单元 当我看到大量内存使用时,我无法重新加载驱

我使用selenium-2.30.0运行一个测试(在windows上),该测试运行了很多小时(约8小时)。我使用的是FF驱动程序,但是它在45分钟或更短的时间内就耗尽了内存&测试执行只是挂起。我无法使用HTMLUnitDriver(我认为纯java解决方案就是答案)以与FF驱动程序相同的方式运行(因为它需要等待页面加载&我绝对不想在代码中加入随机线程休眠,也不想通过扩展HTMLUnitDriver来实现任何新功能)

  • 我不能将测试用例分解为多个更小的单元
  • 当我看到大量内存使用时,我无法重新加载驱动程序

有什么办法可以让它工作吗?

你在做什么样的测试?硒主要用于验收测试。听起来你要做的更像是在你的系统上进行浸泡测试


如果是这样的话,看看,它更适合这种类型的工作。然而,这两种技术之间的一个相当显著的区别是JMeter在协议(HTTP请求)级别工作,而不是Selenium使用呈现的HTML。

Java测试代码或Firefox本身会崩溃什么?如果是Java测试代码,那么您确定没有泄漏内存吗?或者可能是服务器端内存泄漏?

我发现这个链接:,&非常有用。创建了一个全新的firefox配置文件,具有绝对最小的设置,测试在过去4小时内一直在运行,没有出现任何问题。非常感谢你们的帮助

JMeter看起来是一个很好的负载测试工具,但我需要执行javascript&我的应用程序每隔几秒钟就会从不同的外部公共网站获取值,这就是我选择selenium的原因。(我以前使用过watij,但IE驱动程序中的漏洞使IE在几分钟内崩溃)不用担心,我只是确认您正在使用适当的工具来完成您正在尝试的操作(听起来像是这样)。您是否考虑过,与Selenium相比,您的应用程序的Javascript中可能存在漏洞?(例如,如果您有一个iframe或在测试过程中可能正在构建对象的东西)。另外,当您使用非Firefox浏览器执行测试时,是否会得到相同的结果?IE(不幸的是,我没有服务器端的句柄,IE 8在几分钟内崩溃&我还没有尝试chrome driverFirefox崩溃或挂起,因为我从未关闭我的WebDriver。