如何使用Java在Selenium Webdriver中的2个浏览器之间切换

阿姆鲁莎

我正在使用Java开发Selenium Webdriver。我想打开浏览器,在其中执行一些操作。然后打开另一个浏览器并在其中执行相同的操作,然后返回第一个浏览器并执行一些操作。

如何在2个浏览器之间切换(而不是2个标签之间的切换)?

这就是我所做的:

@BeforeTest
    public void beforeTest() throws BiffException, IOException,InterruptedException {
System.setProperty("webdriver.chrome.driver","D:\\MyProjects\\SeleniumTrials\\chromedriver_win32\\chromedriver.exe");
        WebDriver driver = new ChromeDriver();
        driver.get(properties.getProperty("VAR_BASEURL"));
        driver.manage().window().maximize();
      WebDriver  tempDriver = new ChromeDriver();
        tempDriver.get(properties.getProperty("VAR_BASEURL"));
        tempDriver.manage().window().maximize();
}
@Test
    public void playTournament() throws InterruptedException, BiffException,IOException {
    int rowNumber = 1;
    int newRowNumber=2;
    WebElement login =driver.findElement(By.xpath(properties.getProperty("VAR_LOGIN"))); 
    login.click();
    Thread.sleep(1000);
    WebElement username = driver.findElement(By.xpath(properties.getProperty("VAR_USERNAME")));
    username.clear();
    username.sendKeys(getCellContent(0, rowNumber));
    Thread.sleep(1000);
    WebElement password = driver.findElement(By.xpath(properties.getProperty("VAR_PASSWORD")));
    password.clear();
    password.sendKeys(getCellContent(1, rowNumber));
    Thread.sleep(1000);
    WebElement continueButton = driver.findElement(By.xpath(properties.getProperty("VAR_CONTINUE")));
    continueButton.click();
    Thread.sleep(1000);

   WebElement login =tempDriver .findElement(By.xpath(properties.getProperty("VAR_LOGIN"))); 
   login.click();
   Thread.sleep(1000);
   WebElement username = tempDriver .findElement(By.xpath(properties.getProperty("VAR_USERNAME")));
   username.clear();
   username.sendKeys(getCellContent(0, rowNumber));
   Thread.sleep(1000);
   WebElement password = tempDriver .findElement(By.xpath(properties.getProperty("VAR_PASSWORD")));
   password.clear();
   password.sendKeys(getCellContent(1, rowNumber));
   Thread.sleep(1000);
   WebElement continueButton = tempDriver .findElement(By.xpath(properties.getProperty("VAR_CONTINUE")));
   continueButton.click();
盖伊

当你做

WebDriver driver = new ChromeDriver();
driver = new ChromeDriver();

您重新初始化driver实例,女巫意味着您松开了第一个浏览器。您可以通过致电查看getWindowHandles()

driver.getWindowHandles(); // will be 1, the last open browser

如果要使用其他浏览器,请使用临时驱动程序

WebDriver driver = new ChromeDriver();
WebDriver tempDriver = new ChromeDriver();

// do some stuff on tempDriver

tempDriver.close();

// continue working with the first driver

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无法使用Selenium WebDriver在两个浏览器窗口之间切换

使用带有Java的Selenium WebDriver在浏览器选项卡之间切换

如何在Python中使用Selenium在由不同WebDriver打开的不同Chrome浏览器窗口之间切换?

在Selenium中使用Linktext在浏览器之间切换

如何使用Java代码加快Selenium Webdriver中的iFrame之间的切换?

如何使用Java在Selenium WebDriver中的框架之间切换

如何快速在不同的“ Chrome浏览器人”之间切换?

如何切换在Chrome浏览器中显示网站的语言?

如何使用Selenium Java从网站中的框架切换

如何使用Java调整Selenium WebDriver中当前浏览器窗口的大小?

使用选择器在 2 个全局 SCSS 之间切换

如何在2个SVG之间交替切换

如何在2个用户控件之间切换?

无法切换到主窗口内的浏览器窗口。(Selenium Webdriver)

在切换情况下,无法使用Selenium Web驱动程序在其他浏览器中运行URL

如何在 JQUERY 中的 2 个表单之间切换

课堂切换后,如何使这种效果永远留在用户浏览器上?

用户切换浏览器选项卡时如何从JApplet隐藏JDialog?

如何不用鼠标在Google Chrome浏览器中切换标签页?

使用浏览器打开.html(= .Rmd输出)时,无法切换传单层瓦片

如何使用Selenium Java Webdriver切换引导程序开关?

使用Java使用Selenium WebDriver捕获浏览器日志

如何使用Selenium和Java在多个帧之间切换

最小化浏览器屏幕后,菜单栏切换器在Angular中不起作用。我在Angular中使用引导功能

使用testng在一个浏览器中跨多个类运行Java Selenium Webdriver测试

如何使用Selenium和Python在iframe之间切换?

如何在一个序列中的三个或多个div之间切换/切换类?

如何使用Selenium WebDriver + Java获取浏览器控制台错误消息?

如何使用带有Java的Selenium WebDriver获取浏览器名称?