リモート マシンで monkeyrunner スクリプトを実行する必要があります。私はpythonを使用して自動化し、RPyCを使用して他のマシンに接続できるようにしています。すべてがCentOSで実行されています。
以下は、私が使用したコマンドです。
rpycをインポート
サブプロセスのインポート
conn = rpyc.classic.connect("192.XXX.XXX.XXX",XXXXX)
conn.execute (「印刷 'こんにちは'」)
subprocess.Popen("/opt/android-sdk/tools/monkeyrunner -v ALL
/opt/android-sdk/tools/MYSCRIPT.py", shell=True)
これが結果です。
指定されたスクリプト ファイルを開けません
使用法:monkeyrunner [オプション] script_file
-s MonkeyServer IP アドレス
-p MonkeyServer TCP ポート
-v MonkeyServer ログレベル
そして、以下のコマンドを使用すると、マシンでコマンドが実行されていることに気付きました。(例: Popen 内のコマンドは "ls" です。結果として、LOCALHOST の現在のディレクトリにあるファイルとディレクトリのリストが表示されます)。したがって、コマンドは間違っています。
subprocess.Popen("/opt/android-sdk/tools/monkeyrunner -v ALL
/opt/android-sdk/tools/MYSCRIPT.py", shell=True)
だから私はコードをこれに置き換えました
conn.modules.subprocess.Popen("/opt/android-sdk/tools/monkeyrunner -v ALL
/opt/android-sdk/tools/MYSCRIPT.py", shell=True)
そして、このエラーメッセージを教えてください
======= リモート トレースバック ======= トレースバック (最新の呼び出しが最後): ファイル "/usr/lib/python2.4/site-packages/rpyc-3.2.2-py2.4.egg /rpyc/core/protocol.py"、300 行目、_dispatch_request res = self._HANDLERS[handler](self, *args) ファイル"/usr/lib/python2.4/site-packages/rpyc-3.2.2- py2.4.egg/rpyc/core/protocol.py"、532 行目、_handle_call で self._local_objects[oid](*args, **dict(kwargs)) を返す ファイル "/usr/lib/python2.4/subprocess .py", line 542, in init errread, errwrite) File "/usr/lib/python2.4/subprocess.py", line 975, in _execute_child raise child_exception OSError: [Errno 2] No such file or directory
======= ローカル例外 ======== トレースバック (最新の呼び出しが最後): ファイル ""、1 行目、? ファイル「/usr/lib/python2.4/site-packages/rpyc-3.2.2-py2.4.egg/rpyc/core/netref.py」、196 行目、コール return syncreq(_self, consts.HANDLE_CALL, args, kwargs) ファイル "/usr/lib/python2.4/site-packages/rpyc-3.2.2-py2.4.egg/rpyc/core/netref.py"、71 行目、syncreq return conn.sync_request( handler, oid, *args) ファイル "/usr/lib/python2.4/site-packages/rpyc-3.2.2-py2.4.egg/rpyc/core/protocol.py"、438 行目、sync_request で obj を発生させますOSError: [Errno 2] そのようなファイルまたはディレクトリはありません
管理者アクセス権がないため (リモート マシンのユーザー名とパスワードを入力しなかったため)、ファイルを実行できないのではないかと考えています。
ヘルプ!