SeleniumでのElement is not clickableエラー

kensuke-iizuka 25views 更新:2016年10月28日

Seleniumで自動テストを実行する際に、以下のようなエラーが出ました。

WebDriverError: unknown error: Element is not clickable at point (767, 505). Other element would receive the click: <div id='Error elem'>...</div> 

上記のエラーはclickイベントをある要素に対して行おうとした時にクリックできませんでした、間違えて

<div id='Error elem'>...</div>

をクリックしちゃいました。

みたいなエラーです。どういうことかというと例えば送信ボタンを押す前に日付を入力するためにカレンダーインターフェースを開いてそのまま 上からボタンを押そうとしてしまっている時に発生するエラーです。当然カレンダーが上に重なっているので上手くいきません。

これを解決するには

そもそもカレンダーや上にのっている要素を一度閉じる。(DOM操作を行う)

とかclickイベントではなくsubmitイベントを使うなどの工夫が必要です。inputタイプのボタンならclickをsubmitでほとんどの場合で代用さ可能なはずです。(厳密には異なるイベントなので、代用できない時もあります)

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません