モーダル ダイアログの問題を解決するために、2 日間 Web を検索しました。そこには素晴らしい情報があり、IEを除いてすべて機能します。ファイルのアップロード ダイアログを開いて、新しいファイルを選択しようとしています。autoIT スクリプトを作成しましたが、FF と Chrome で問題なく動作します。IE で試してみると、「executeScript」がテスト スクリプトに戻りません。IE では、[ファイルのアップロード] ダイアログが開きます。しかし、それが私のスクリプトが停止する場所です。autoIT スクリプトを手動で実行すると、「ファイルのアップロード」ダイアログが閉じた後、テスト スクリプトに戻ります。
//WebDriver driver = new FirefoxDriver();
// processPage(driver);
WebDriver ieDriver =new InternetExplorerDriver();
processPage(ieDriver);
// WebDriver chromeDriver = new ChromeDriver();
// processPage(chromeDriver);
. . . その他のコード。.
WebElement element = driver.findElement(By.name(uploadDifferntFile));
if (driver instanceof InternetExplorerDriver) {
((InternetExplorerDriver) driver).executeScript("arguments[0].click();", element);
} else if(driver instanceof FirefoxDriver){
((FirefoxDriver) driver).executeScript("arguments[0].click();", element);
} else if(driver instanceof ChromeDriver){
((ChromeDriver) driver).executeScript("arguments[0].click();", element);
}
. . . オートIT。. .
try {
Process proc = Runtime.getRuntime().exec(fileToExecute);
} catch (IOException e) {
System.out.println("Failed to execute autoIT");
e.printStackTrace();
}
いつも応援ありがとうございます