web-dev-qa-db-ja.com

Windows 7(またはマルチプラットフォームが望ましい)の画面自動化に使用するSikuliよりも優れたツール

画面自動化に Sikuli を使用しています。つまり、画面上の外観に応じてGUI要素をクリックします。これは大丈夫ですが、Sikuliには1つの大きな欠点があります。

  • 各スクリプトの起動が遅い(JVM全体が毎回ロードされるため)。

Sikuliの詳細については、昨年以来あまり開発が行われていないため、代替の自動化ツールを探しています。私が必要とする大きなチケットは、クリーンアウェアネスです:ツールは、画面上の特定のUI要素を「見る」必要があります。クリック。

Sikuliよりも高速で保守性の高いツールの提案はありますか?

27
halloleo

Windowsで何かを自動化する場合は、 Automa -新しい軽量のGUI自動化ツールをお勧めします。 UI要素を単に「検索」します。必要なのは、人間のユーザーが表示する名前を提供することだけです。そして実際には、Sikuliよりも使いやすいです。スクリーンショットを撮る必要はありません。たとえば、Windows Live Messengerに自動的にサインインする場合、次のスクリプトを実行できます。

start("messenger")
write("[email protected]", into="Email address")
write("secret", into="Password")
click("Sign in")

または、同様に、資格情報を入力してFacebookに自動的にログインするには、次のコマンドを実行するだけです。

start("firefox")
write("facebook.com", into="Location")
press(ENTER)
write("[email protected]", into="Email or Phone")
write("secret", into="Password")
click("Log in")

このツールは、Webブラウザーを含むほとんどのWindowsアプリケーションで動作します。どの技術で書かれていても、このツールはPythonで書かれており、インポート可能なAPIライブラリを通じてPythonアプリケーション内から使用できます。

Automa対Sikuliについて:AutomaはSikuliと同じ高レベルですが、スクリーンショットは必要ありません。これにはいくつかの利点があります。

  • 自動スクリプトは、バージョン管理システムに保存する方が簡単です。
  • Automaスクリプトは純粋にテキストベースであるため、メンテナンスが容易になります。ラベルがどこかで変わると想像してください。このラベルは、いくつかのSikuliスクリーンショットに表示される場合があります。スクリーンショットは再取得する必要があります。 Automaを使用すると、ファイル間で簡単な検索と置換を行うだけです。
  • ユーザーインターフェイスの変更に関してより安定しています。色の変更やボタンが数ピクセル移動することを想像してください。
  • アプリケーションが存在する前にスクリプト/テストを書くことができるなどのその他の素晴らしい機能-すでに機能/プログラムの仕様から「ここをクリック」、これを入力、「そこ」をクリックするというスクリプトをいつでも書くことができます。スクリーンショットでは不可能です。

開示: Automa に取り組んでいます。

7
Tytus

WinFormsアプリケーションまたはWPFアプリケーションを自動化しようとしていますか? WPFを参照している場合は、 Telerikの無料のテストフレームワーク をお勧めします。 (開示:私は、TelerikのTest Studioエバンジェリストです。)

スクリプト/テストは位置ベースではなく要素ベースであるため、テストフレームワーク(または完全なTest Studio製品)はWPFで非常にうまく機能します。

2
Jim Holmes