これは、私の質問のテストのフォローアップで、たまにエラーが発生します。ドライバーを初期化します
public class TestSuite {
public static WebDriver driver;
@BeforeClass
public static void setUpClass() {
driver = new FirefoxDriver();
}
public class FluentDriver extends TestSuite {
public static WebElement fluentWait(final By locator) {
Wait<WebDriver> wait = new FluentWait<WebDriver>(driver)
.withTimeout(300, TimeUnit.SECONDS)
.pollingEvery(50, TimeUnit.SECONDS)
.ignoring(NoSuchElementException.class);
WebElement element = wait.until(
new Function<WebDriver, WebElement>() {
public WebElement apply(WebDriver driver) {
return driver.findElement(locator);
}
});
return element;
}
; }
しかし、これは確かにページ上にあるスクリプトを処理していませんが、そのソースにアクセスできません。
FluentDriver.fluentWait(By.id("id")).click();
FluentDriver.fluentWait(By.xpath("//a[starts-with(@href,'/problematic_url.html')]")).click();
FluentDriver.fluentWait(By.className("green_true")).click();
「id」をクリックすると、問題のある URL があるサブメニューが表示されます。Web ページのソース (Ctrl+U) では、URL が常に表示されます。