2016-09-01 7 views
0

Appleは既にApplescriptのような完全なUI自動化ツールを統合しているので(古代、はい...醜いですが、それ以上は見つからない)、私はPythonユニットテストクラス内でAppleScriptスクリプトを実行できます。Pythonを使用してAppleScriptスクリプトを実行する最も簡単なソリューション

私はASとPythonを統合している放棄されたプロジェクトを見つけましたが、安定して信頼できるものを使用したいと思います。そして最も簡単に実装することができます。

私はpyObjCを見ましたが、対処するのはかなり苦痛です(Objective-Cについては基本的に何も分かりません)ので、私が試した最後の手段はASを使用することですが、私がPythonのようなものを使わない限り、アクションに関する結果。より簡単な方法がない限り、私はわかりません

答えて

0

は、ASハンドラを呼び出してPythonの引数と結果をAS同等物に自動的に変換するPyObjCとNSAppleScriptの使いやすいラッパーを提供します。 (厳密に言えば、py-appscriptもサポートしていません - py-appscriptのように、私はもはや悪い時を過ごすつもりはありませんが、py-applescriptコードは単純なので、Pythonユーザはどのように修正するか、 )また、PyObjCとAppleScriptObjCの両方をbridge all the way from Python to AppleScriptに使用することで、余分なモジュールの依存関係を避けることができます。ただし、両方のObjCブリッジを基本的に理解する必要があります。

Pythonでアップルのイベントオートメーションを行う唯一のオプションは、PyObjCを介してOS Xの厄介なScripting Bridgeフレームワークを使用することですが、SBは理解できないバグ、不具合、欠点があります。テストスクリプトに最後に注入したいもの。

...

OTOH、あなたがだけは、グラフィカルなUIテストをやっている場合は、Pythonの経由AppleScriptを介して、システムEvents.app経由でOS Xの低レベルのアクセシビリティAPIを呼び出すと、とにかく間違いなくやり過ぎである、そしてあなたOS XのアクセシビリティAPIをそのままラップする既存のPython GUIオートメーションライブラリを見てみたいかもしれません。例えばHere's a useful-looking listですが、その正確さや完全性、またはリンク先のライブラリの品質を保証することはできません。

関連する問題