Скрипты обезьян-андроидов

Я пытаюсь выполнить образец программы python через командную строку обезьяны runner, и она бросает ошибку

Can't open specified script file Usage: monkeyrunner [options] SCRIPT_FILE -s MonkeyServer IP Address. -p MonkeyServer TCP Port. -v MonkeyServer Logging level (ALL, FINEST, FINER, FINE, CONFIG, INFO, WARNING, SEVERE, OFF) 

Исключение в потоке «main» java.lang.NullPointerException, поэтому любой может помочь мне решить эту проблему

Solutions Collecting From Web of "Скрипты обезьян-андроидов"

Scriptfile должен быть полным именем файла пути, попробуйте ниже monkeyrunner c:\test_script\first.py

Попробуйте использовать что-то вроде

 ...\tools>monkeyrunner -v ALL first.py 

Где first.py был моим примером скрипта python, который я скопировал в папку инструментов android SDK (место, где находится monkeyrunner.bat )

Во всех семействах unix / linux OS может использоваться синтаксис sha bang.

Отредактируйте первую строку своего скрипта с результатами следующей команды:

 which monkeyrunner 

Например, если monkeyrunner (обычно предоставляется с android sdk) был установлен в / usr / local / bin / sdk write:

 #!/usr/local/bin/sdk/tools/monkeyrunner 

Или даже использовать "env"

 #!/usr/bin/env monkeyrunner 

Затем установите файл сценария как исполняемый файл

 chmod +x <script> 

Теперь вы можете запустить свой скрипт из оболочки.

Не имеет смысла переключать рабочий каталог в папку Android SDK, но просто для получения некоторого пути относительных ссылок для себя. Это означает, что вам нужно указать полный путь для вашего файла сценария и файлов изображений PNG, которые вы хотите сохранить или сравнить.

Лучше всего изменить несколько строк в файле «monkeyrunner.bat» в папке SDK, как показано ниже. Это будет использовать ваш текущий путь как рабочий каталог, поэтому нет необходимости использовать полное имя файла пути.

  rem don't modify the caller's environment setlocal rem Set up prog to be the path of this script, including following symlinks, rem and set up progdir to be the fully-qualified pathname of its directory. set prog=%~f0 rem Change current directory and drive to where the script is, to avoid rem issues with directories containing whitespaces. rem cd /d %~dp0 rem Check we have a valid Java.exe in the path. set java_exe= call %~sdp0\lib\find_java.bat if not defined java_exe goto :EOF set jarfile=monkeyrunner.jar set frameworkdir= set libdir= if exist %frameworkdir%%jarfile% goto JarFileOk set frameworkdir=%~sdp0\lib\ if exist %frameworkdir%%jarfile% goto JarFileOk set frameworkdir=%~sdp0\..\framework\ :JarFileOk set jarpath=%frameworkdir%%jarfile% if not defined ANDROID_SWT goto QueryArch set swt_path=%ANDROID_SWT% goto SwtDone :QueryArch for /f %%a in ('%java_exe% -jar %frameworkdir%archquery.jar') do set swt_path=%frameworkdir%%%a :SwtDone if exist %swt_path% goto SetPath echo SWT folder '%swt_path%' does not exist. echo Please set ANDROID_SWT to point to the folder containing swt.jar for your platform. exit /B :SetPath call %java_exe% -Xmx512m -Djava.ext.dirs=%frameworkdir%;%swt_path% -Dcom.android.monkeyrunner.bindir=%frameworkdir%\..\..\platform-tools\ -jar %jarpath% %* 

Я встретил то же, что и вы, я решил с помощью команды «monkeyrunner» под инструментами, а ваш файл сценария должен быть полным именем пути. Похоже, что каталог «tools» является основным каталогом MonnkeyRunner. Я в депрессии, что я не могу напрямую запускать файлы сценариев с помощью pydev IDE.

Monkeyrunner.bat cygpath -w $(pwd)/monkey.py