当前位置: 首页 > 知识库问答 >
问题:

如何用java在selenium webdriver中实现两种浏览器的切换

鲜于雨石
2023-03-14

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

@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();

共有1个答案

微生昌勋
2023-03-14

我猜这就是你要找的,

  1. 保留两个浏览器对象
  2. 定义在浏览器上执行一组操作的方法
  3. 首先使用第一个浏览器调用此方法,然后再使用第二个浏览器
  4. 然后在第一个浏览器上执行更多操作
 类似资料:
  • 我正在使用C#在selenium web驱动程序中为Chrome浏览器编写一个自动化脚本。我陷入了一个场景:多个选项卡在同一浏览器中打开,我需要导航到浏览器的第一个选项卡,并需要在“身份验证”对话框中重新输入登录凭据。 授权窗口截图如下: 我无法导航到第一个选项卡,也无法传递用户名 执行上述代码后,将出现以下错误: WebDriver等待有一些无效的参数。参数2:不能从int转换为System.时

  • 意思就是想要两个 tab页同时能获取到一个状态的更改。比如在 A 页面改的状态,在 B 页面也可以同时获取到

  • 我尝试使用request.meta['http_user_agent']来检测浏览器。但这将返回我测试时的浏览器类型列表 **我无法得到它返回值的模式。谁能告诉我如何得到浏览器名称

  • 本文向大家介绍jQuery+css实现的tab切换标签(兼容各浏览器),包括了jQuery+css实现的tab切换标签(兼容各浏览器)的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jQuery+css实现的tab切换标签。分享给大家供大家参考,具体如下: 运行效果截图如下: 具体代码如下: 更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery动画与特效用法总结》及《jQ

  • 问题内容: 我的站点转到登录页面,我想在用户登录时重定向到另一个页面。我有一个“ POST”方法,该方法将“用户名”和“密码”发送到服务器,服务器检查用户名和密码存在。 这是我的方法 客户端能够正确发布用户名和密码,并检查其是否存在…我只是不知道如何使它呈现(重定向到???)一个新页面 问题答案: 你可以 … 重定向,(使用,将任何需要的值作为查询参数传递。例如 或者你可以.. 使用Jersey的

  • 我试图在浏览器中打开xls工作表,而不是在MS Excel中。我尝试使用但是不起作用。这是execute方法的完整代码: 无论如何,这可以从Microsoft Office excel应用程序打开excel,但只能通过从NetBeans运行项目。如果我尝试在没有Netbeans的情况下从Tomcat打开它,它是不起作用的。