つれづれなるままに。

webテストの自動化について備忘録のつもりで書いています

Selenium と Sikuli を使った GUI の自動テスト

メインは SeleniumIDEなのですが 

今日は SeleniumWebDriver のこんな使い方もできるんだ的な記事を。

まず、SeleniumWebDriverは Javaで実装されています。

この意味は Selenium単体でもテストできるけどクラスライブラリとして使うこともできるよ。
(ちょっと強引な理解ですが)
となります。

話は突然飛んで
sikuliというテストツールがあります。http://www.sikuli.org
これはOpenCVを使い画像認識を利用して、GUI操作の自動化を行うことができるものです。
スクリプトを見ればわかりますが、つきあわせる スクリーンショットが埋め込まれています。
これもJavaでできていたりします。

で、これを組み合わせてテストすることを考えた人が居ます。
http://romankukla.blogspot.jp/2012/11/how-to-use-sikuli-script-with-selenium.html


Seleniumはブラウザ上の コントロールをエレメントとして操作、値の設定・取得をする訳ですが
これを、画面上のコントロールをスクリーンショットにとり、これに一致するエレメントを探して操作をしてゆくというものです。

実用面からすると、事前に操作対象のコントロールのスクリーンショットをとりスクリプトに埋め込んでおく必要があったり、画面のキャプチャーとのつきあわせに時間がかかるそうなので、かなり特殊なシチュエーションでの利用になりそうです。


が、こういうことも可能という意味では面白いと思いました。