如何使用WebDriver將控制權從舊選項卡轉移到新選項卡? 假設我在新選項卡中打開鏈接,然後我想在新打開的選項卡中執行一些操作。我怎樣才能做到這一點?如何將控制權轉移到Selenium WebDriver中的新選項卡
當我在新選項卡中打開鏈接時,控件仍然存在於舊選項卡中。請提供解決方案。
例如:我打開Gmail中的鏈接「創建帳戶」,以新的選項卡,然後我儘量填寫表單提供的文本字段,但是當我運行該程序時,它總是說找不到元素
謝謝。
如何使用WebDriver將控制權從舊選項卡轉移到新選項卡? 假設我在新選項卡中打開鏈接,然後我想在新打開的選項卡中執行一些操作。我怎樣才能做到這一點?如何將控制權轉移到Selenium WebDriver中的新選項卡
當我在新選項卡中打開鏈接時,控件仍然存在於舊選項卡中。請提供解決方案。
例如:我打開Gmail中的鏈接「創建帳戶」,以新的選項卡,然後我儘量填寫表單提供的文本字段,但是當我運行該程序時,它總是說找不到元素
謝謝。
new Actions(driver).sendKeys(driver.findElement(By.tagName("html")), Keys.CONTROL).sendKeys(driver.findElement(By.tagName("html")),Keys.NUMPAD2).build().perform();
會將控件傳遞到新選項卡(此腳本假定新選項卡是第二選項卡)。
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_W);
robot.keyRelease(KeyEvent.VK_W);
robot.keyRelease(KeyEvent.VK_CONTROL);
這將關閉新標籤。
new Actions(driver).sendKeys(driver.findElement(By.tagName("html")), Keys.CONTROL).sendKeys(driver.findElement(By.tagName("html")),Keys.NUMPAD1).build().perform();
將切換回原始選項卡。
相關問題
Selenium 2: Open link in new tab and close tabs
switch tabs using Selenium WebDriver with Java
嗨, 這是我的代碼: 公共無效測試()拋出異常 \t { \t \t webdriver的驅動程序=新FirefoxDriver(); \t \t driver.get(「http:/www.gmail.com」); \t \t WebElement element = driver.findElement(By.linkText(「Create a account」)); \t \t Actions oAction = new Actions(driver); \t \t oAction.moveToElement(element); (Key.ARROW_DOWN).sendKeys(Keys.ENTER).build()。perform();方法如下: \t \t Thread.sleep(10000); (「名字」))。sendKeys(「gaurav」); (「LastName」))。sendKeys(「saini」); \t} 我在新標籤中打開'創建一個帳戶',並且想填寫表格 –
但是控件仍然在之前的標籤中,它總是說沒有找到元件,請幫助這個如何從中解脫出來。 –
//declare selectLinkOpeninNewTab above the main method
static String selectLinkOpeninNewTab = Keys.chord(Keys.CONTROL,Keys.RETURN);
// to open your seession in new tab
driver.findElement(By.id("")).sendKeys(selectLinkOpeninNewTab);
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
// to perform actions
driver.switchTo().activeElement().sendKeys(Keys.CONTROL,Keys.NUMPAD2);
// for example thease are your actions
driver.findElement(By.id("")).click();
driver.findElement(By.id("")).clicl();
// to close new tab and back to current tab
driver.findElement(By.tagName("body")).sendKeys(Keys.CONTROL+"w");
您正在使用的編程語言
? Java,python,C#還是什麼? –
您需要使用WebDriver的getWindowHandle()和getWindowHandles()方法來處理窗口/選項卡。 –