2016-09-02 20 views
1

hybridアプリのいずれかをAppiumを使って自動化しようとしています。ログインボタンをクリックしているときに問題が発生しています。Appiumは要素をクリックしていません

org.openqa.selenium.WebDriverException: unknown error: Element is not clickable at point (116, 329). Other element would receive the click: <button class="button button-medium button-custom-login " ng-click="login()">...</button>

そして私はちょうど属性ng-click="login()で、ここで述べた、すなわち1と同じ要素をクリックします:私は取得していますエラーメッセージがあります。

コンテキストをすでにWebViewに変更し、属性をNativeに変更しようとしましたが、何も動作していないようです。

私は、この要素を識別するために使用したコードは以下の通りです:

List<WebElement> labels = driver.findElementsByTagName("button"); 

私はすべての要素を反復して、私は数20要素をクリックする必要があることがわかりました。

これについての助力は素晴らしいことです。ありがとう!

+0

'Actions'クラスを' Actions.moveToElement(element).click()。perform() 'として試してみてください。:) –

+1

こんにちはSaurabhです。あなたの助けに感謝します。 –

答えて

0

あなたがリストに番号20の要素をクリックする必要があることを発見した場合、あなたはこの道を行くことができます:

int pos = 20; 
List labels = driver.findElementsByTagName("button"); 
labels.get(pos-1).click(); 
+0

これはすでに試してあり、これも動作していません。あなたの提案をありがとう。 –

+0

'driver.findElementsByTagName(" button ");は何も返しませんか? – Shahid

+0

はい、あります。それは約25の要素を返します。私はすべての要素のテキストを取得し、20番はクリックしたいログインボタンであることがわかりました。クリックすると.clickメソッドを使用してエラーが表示されます。 「他の要素がクリックを受け取る」ことを示しています。この他の要素だけをクリックする必要があります。 –

2

あなたは以下のようにActionsクラスを使用してみてください: -

WebElement element = driver.findEle.... 
Actions action = new Actions(driver); 
action.moveToElement(element).click().perform(); 
関連する問題