Spock + Gebでダイアログを操作する方法
ここ最近はGroovyでテストを自動化するためにSpockとGebを使っています。
WebサービスでJSでconfirmなどで確認ダイアログをすることが多いと思うのですが、
そのテストの書き方がわからなかったので調べて実装してみました。
環境
コード
注目すべきコード
// SampleSpac.groovy def confirm = environment.ie.driver.switchTo.alert() confirm.accept() // confirm.dismiss()
switchTo().alert()をすることでブラウザ上でポップアップしているJavascriptのダイアログが操作できるようになります。
accept()を使うことでconfirm関数の戻り値としてtrueを返すことができます。
dismiss()を使うことでconfirm関数の戻り値としてfalseを返すことができます。
蛇足
これを見付けだすのに一時間も使ってしまったことに後悔…
Selenium自身を勉強しないとGebを使いこなすことができないですね…