2016-04-01 1 views
0

私はJavascriptExecutorを実装CustomWebDriverクラスを持っていると私は以下のようにオーバーライドを持っている:Javaのセレン - JavaScriptExecutor - 引数が不正な型のものである:driverFactory.CustomWebElement

@Override 
public Object executeScript(String script, Object... args) { 
    return ((JavascriptExecutor) driver).executeScript(script, args); 
} 

私は以下のようにこれを使用すると、私は見ますエラー:Argument is of an illegal type: driverFactory.CustomWebElement

WebElement testElmtBy = returnSearchLists().get(i); 
    WebDriver vDriver = driver.get(); 
    ((JavascriptExecutor)vDriver).executeScript("arguments[0].scrollIntoView(true);", testElmtBy); 

returnSearchLists().get(i)CustomWebElementタイプのものであり、そのクラス内の要素は、​​

であります

testElmtByをWebElementとして宣言しましたが、依然としてCustomWebElementと見なされています。

ここには何かがありますか?

答えて

1

私は、この問題については、以下の解決策が見つかりました:

public WebElement iElement;  
@Override 
public WebElement getWrappedElement() { 
    return iElement; 
} 
:私は CustomWebElementWrapsElementを実装し、以下のようにオーバーライドを持っていた

関連する問題