2

我的问题是,有时当我测试一个网站时,FF webdriver 并没有在测试后关闭浏览器窗口,尽管它会继续测试过程,直到打开的窗口太多以至于没有剩余内存。我曾尝试使用 driver.close() 和 driver.quit() 以及它们两者,但有时它们似乎不起作用。有没有办法强制司机下车?我考虑终止进程,但似乎无法获得已启动 Webdrivers 的 PID ...我是唯一遇到此问题的人吗?

4

3 回答 3

1

好吧,我不确定您的代码是什么样子(因为您没有提供它),但这种测试的通常流程是使用以下方法进行类。

public class TestClass {

     private WebDriver driver;

     @BeforeClass
     public void setUp() {
         driver = new FirefoxDriver(); //or any other one
     }

     @Test
     public void test1() {}

     @Test
     public void test2() {}

     @AfterClass
     public void tearDown() {
         driver.quit();
     }
}

请注意,您不必调用WebDriver#closeWebDriver#quit在测试方法中,您可以在测试期间重用浏览器会话。

于 2013-11-13T08:55:22.030 回答
1

您需要为每个 testCasedriver.quit()调用框架 tearDown ,就像您应该在框架 setUp 中为每个 testCase 分配它一样。看看这里http://siking.wordpress.com/2013/02/28/what-is-wrong-with-groovytestcase-and-selenium/这有点描述你的问题。

于 2014-01-29T22:54:12.173 回答
-1

我让 Firefox 与 driver.quit() 一起工作。我所做的是卸载我当前的版本并从 Modzilla 公开的目录下载旧版本的 Firefox: https ://ftp.mozilla.org/pub/mozilla.org/firefox/releases/

我从这里下载的版本是“Firefox Setup 27.0.exe”: https ://ftp.mozilla.org/pub/mozilla.org/firefox/releases/27.0/win32/en-US/

之后一切正常。


在切换 Firefox 版本之前,我使用 Firefox 浏览器从这里下载 Selenium IDE: http ://www.seleniumhq.org/download/ 在此处输入图像描述

Selenium IDE 是一个 Firefox 插件。

我认为发生的事情是:当我拥有 Firefox 版本 32(最新版本)并查看“扩展”选项时,Selenium IDE 不会出现。现在我有了 Firefox 版本 27,Selenium IDE 出现了,它看起来像这样: 在此处输入图像描述

于 2014-09-03T21:52:15.087 回答