2017-04-10 15 views
0

I以下のセレンC#のコードがあります。C#セレンMoveByOffset投げInvalidOperationExceptionが

IWebElement energyLink= driver.FindElement(By.LinkText("Energy")); 
Actions clickAction=new Actions(driver); 
clickAction.MoveToElement(energyLink).MoveByOffset(-25,0).Click().Build().Perform(); 

私はInvalidOperationException= "Parameter 'x' was not a positive integer(IndexOutOfBounds)"を取得しています

clickAction.MoveToElement(energyLink).MoveByOffset(-25, 0).Click().Perform();オンを

私の意図は にあるサードパーティのコンポーネントをクリックすることです

X:15 Y:395

IWebElement energyLinkはcoo rdinates X:40, Y:395

そこで私は、私はあなたがFirefoxの上で実行していると思うMoveByOffset(-25,0)

+0

を必要としないセレンの古いバージョンを使用する必要があり、ページ上の要素内部のサードパーティのコンポーネントではありませんか?代わりに参照として使用して、オフセットを正の値に保つことができます。 – JeffC

答えて

1

を使用しようとしています。

セレン2.53.1以降では、geckodriver.exeを使用して、Firefoxで自動化スクリプトを実行しています。

アクションクラスはgeckodriverでは実装されていません。だから そのエラーを取得しています。

クロムで実行すると、その例外は発生しません。

あなたはFirefoxで実行したい場合、あなたはgeckodriver

関連する問題