2017-02-16 4 views
1

このコードスニペットをFirefoxの複数のタブで同じURL「google.com」を開くのを自動化しようとしました。しかし、それはまだ新しいWindowsでのみ開かれます。私はそのURLだけを開きたいので、ハンドルを前後に切り替えることは望ましくありません。これは、あなたがGoogleの検索ページを開くことができるようにすべきである複数のタブが開いているセレンが表示されない

JavascriptExecutor jse = (JavascriptExecutor)driver; 
for(int i = 0; i < 15; i++) 
    { 
    jse.executeScript("window.open('https://google.com');"); 
    } 

:あなたは、コードの下に試すことができ

public class MultipleTabsWebinar { 
public static void main(String[] args) throws InterruptedException{ 
    List drivers = new ArrayList(); 
    for(int i = 0; i < 5; i++){ 
     WebDriver driver; 
     System.setProperty("webdriver.gecko.driver", "C:\\geckodriver-v0.11.1-win64\\geckodriver.exe"); 
     System.out.println("Hello World Test on AMS148"); 
     driver = new FirefoxDriver(); 
     driver.get("http://10.3.3.148"); 
     Thread.sleep(100); 
     driver.findElement(By.cssSelector("body")).sendKeys(Keys.CONTROL +"t"); 
     drivers.add(driver); 
    } 
    for(int i = 0; i < drivers.size(); i++){ 
     ((WebDriver) drivers.get(i)).close(); 
    } 
} 

}

+1

各繰り返しで別々のブラウザインスタンスを開きます。 – qqilihq

+0

ありがとうございます。しかし、15のタブを開き、15のすべてのタブで上記のURLに移動するにはどうすればいいですか? – a4aravind

+1

各イテレーションで新しいWebDriverをインスタンス化せず、コードの残りの部分はうまくいくはずです(キーの組み合わせを送信すると、新しいタブを開く唯一の方法です)。 – qqilihq

答えて

1

あなたは私のコードで間違っているものを見つける助けてください複数の新しいタブで

(コメントに記載されているように)ループ内でWebDriverインスタンスを初期化する

関連する問題