Sikuliには次のようなメリットがあります。
- プログラムが直感的
ソースコードの中に対象の画像が表示されるので、何を操作しているのかが直感的に分かります。 - メニューやボタン以外も操作可能
画像マッチングで位置を特定するだけなので、そこに何があるのかを気にしません。ほとんどの操作対象はボタンやメニューだと思いますが、それ以外のものも操作できます。例えば、Adobe Flashを使ったアプリケーションやPC上で動作するスマホのシミュレータなど、OSからはボタンやメニューとして認識されないものでも操作することができます。 - 画像マッチングを利用して監視もできる
画像上の変化を監視することができます。例えば何か業務アプリで障害が発生したときに赤いエラーメッセージが表示されるようなシステムがあったとします。Sikuliを使うと画面の変化を監視し赤いエラーメッセージが表示されたときに、警告メールを送信するようなプログラムを作ることができます。
PCにカメラを接続していれば、Sikuliでそのカメラ画像の変化を監視することもできます。 - ユーザインターフェースを作れる
Python、Ruby、Javaなどに対応していて、それぞれのプログラミング言語に対応した各種ライブラリを使うことができ、単純なRPAツールとしてだけでなく本格的なカスタムRPAを作る際のフレームワークとしても活用できます。 - OCR処理ができる
画像をOCR処理することができ、帳票をスキャナで読み込んでOCR処理を行い、帳票入力を支援するツールなども作れます。