-1

jsスクリプトがtrueを返すまで待ち​​たいのですが、使用しているコードがコンパイルされておらず、エラーがスローされています

is not abstract and does not override abstract method apply(Object) in Function

これがコードです

WebDriverWait wait = new WebDriverWait(driver, 10);
        boolean isFound = wait.until(new ExpectedCondition(){ //here ERROR
            public Boolean apply(WebDriver d){
                JavascriptExecutor js = (JavascriptExecutor) d;
                return (Boolean) js.executeScript("return true");
            }
        });

http://www.tarnowski.se/2011/09/11/converting-selenium-waitforcondition-to-webdriverwait/からコードをコピーしようとしました

4

1 に答える 1

1

それ以外の

        public Boolean apply(WebDriver d){
            JavascriptExecutor js = (JavascriptExecutor) d;
            return (Boolean) js.executeScript("return true");
        }

試す

        public Boolean apply(Object d){
            JavascriptExecutor js = (JavascriptExecutor) d;
            return (Boolean) js.executeScript("return true");
        }

Functionクラス/インターフェースは、作成するサブクラスにこのシグネチャを持つメソッドを想定しています。

警告がある場合raw types、おそらくnew ExpectedCondition<WebDriver>(){ ...あなたがすることを期待されていることですか?

于 2013-01-05T07:31:39.827 に答える