とあるソフトのテストしていたのですが、時間がかかる、batで動かせない、、、という状態になったので、sikuliというソフトを使ってみました。
sikuliという画像認識でテストしてくれるツールがあるということは知っていたのですが、実際に使うのは初めて。
想像以上に使いやすくてびっくりしました。
インストールや、基本的な使い方は下記の記事を参考にしました。
http://qiita.com/YHayama@github/items/483198cba0e7c4baa78c
現状のバージョンは、1.1.0です。
サイトによっては、画像認識がいまいちという評価を見かけますが、改善されているのかかなり実用的に使えます。
IDE上の画像をクリックすると、画像の一致度、クリックする位置なども正確に設定することが可能です。
で、土日に適当にループでテストさせておきたいのですが、マウス操作系のソフトは出来が悪いのだと止められなくなったりする可能性があって心配していたのですが、止める方法もちゃんと用意されていました。
流石、テスト用のツール。
ちなみに、ctrl + c では止まりません。
sikuli実行の止め方
Windows: alt-shift-c
Mac: cmd-shift-c
... or kill the respective Java process
よく見たら、IDE起動時にも表示されてましたね。
ということで、永久ループのテストとか、wait を FOREVER 待機するとか何も問題なく使用して大丈夫です。
おまけ
sikuliをデフォルトの設定でインストールすると、テストプログラムはJythonで記述出来ます。
永久ループはこのようなプログラムで記述出来ます。
while True:
click(........
・
・
長期間動作させたい場合は、何回動いたのかもカウントしたいですね。
count = 0
while True:
count += 1
click(........
・
・
print count
python の文法は ++ とか、 -- のインクリメント、デクリメントは使用出来ないみたいです。
http://qiita.com/motokitsu/items/0e1cf895252b63e0b4e5
これから、どんどんGUIのテストも自動化していきたいですね。