如何在selenium webdriver中继续在同一浏览器中运行测试

时间:2013-05-20 10:58:13

标签: java selenium-webdriver

我刚接触selenium webdriver,

在某些情况下,我的测试用例失败了,我想通过评论前面的代码从同一个地方(即没有关闭浏览器)运行测试。如何在selenium webdriver中做到这一点。 (就像从QTP中的步骤开始运行)

任何人都可以指导我。

由于

3 个答案:

答案 0 :(得分:1)

为了重用浏览器,您无法在每次测试中初始化它,因此您需要使用单一模式,在该模式中您将拥有一个独特的Web驱动程序。

因此,您希望使用@before@after,而不是使用@beforeclass@afterclass子句来初始化和关闭该浏览器。然后,该类中的每个测试方法将使用相同的浏览器,从前一个测试离开它的确切位置。

但这将在同一测试周期中发生。据我所知,不可能使用在不同周期中启动的浏览器实例,也不可能手动打开。

答案 1 :(得分:1)

我知道有一种方法,但是如果您决定并行运行相同的测试,这可能会涉及一些问题。我建议你研究一下static参数,看它是否适合你。

当您开始第一次测试时,请执行以下操作:

static WebDriver driver = new FirefoxDriver(); // Could be any Driver();

这样,只要您在到达最后一次测试之前没有呼叫driver.someFunction();close(),您拨打quit()的任何测试都会有效。

答案 2 :(得分:0)

此处找到解决方法:https://code.google.com/p/selenium/issues/detail?id=3927

WebDriver  driver=new RemoteWebDriver(new URL("http://localhost:7055/hub" DesiredCapabilities.firefox());
        driver.get("http://www.google.com");