Проблемы с настройкой с помощью инфраструктуры автоматизации тестирования Selendroid
У меня проблемы с настройкой сервера Selendroid. Когда я запускаю команду java -jar selendroid-standalone-0.11.0-with-dependencies.jar -app selendroid-test-app-0.11.0.apk
Я получаю следующие ошибки:
C:\Users\mawal2\Downloads>java -jar selendroid-standalone-0.11.0-with-dependenci
es.jar -app selendroid-test-app-0.11.0.apk
################# Selendroid #################
################# Configuration in use #################
io.selendroid.SelendroidConfiguration@19469ea2[
port=4444
timeoutEmulatorStart=300000
supportedApps=[selendroid-test-app-0.11.0.apk]
verbose=false
emulatorPort=5560
deviceScreenshot=false
selendroidServerPort=8080
keystore=<null>
emulatorOptions=<null>
registrationUrl=<null>
proxy=<null>
serverHost=<null>
keepAdbAlive=false
noWebViewApp=false
noClearData=false
sessionTimeoutSeconds=1800
forceReinstall=false
logLevel=ERROR
]
Oct 16, 2014 7:57:24 AM io.selendroid.SelendroidLauncher launchServer
INFO: Starting selendroid-server port 4444
Oct 16, 2014 7:57:24 AM io.selendroid.io.ShellCommand exec
INFO: executing command: C:\Users\mawal2\Documents\android\adt-bundle-windows-x8
6_64-20140702\sdk\build-tools\android-4.4W\aapt.exe remove C:\Users\mawal2\Downl
oads\selendroid-test-app-0.11.0.apk META-INF/MANIFEST.MF
Oct 16, 2014 7:57:24 AM io.selendroid.io.ShellCommand exec
INFO: executing command: C:\Users\mawal2\Documents\android\adt-bundle-windows-x8
6_64-20140702\sdk\build-tools\android-4.4W\aapt.exe remove C:\Users\mawal2\Downl
oads\selendroid-test-app-0.11.0.apk META-INF/CERT.RSA
Oct 16, 2014 7:57:24 AM io.selendroid.io.ShellCommand exec
INFO: executing command: C:\Users\mawal2\Documents\android\adt-bundle-windows-x8
6_64-20140702\sdk\build-tools\android-4.4W\aapt.exe remove C:\Users\mawal2\Downl
oads\selendroid-test-app-0.11.0.apk META-INF/CERT.SF
Oct 16, 2014 7:57:24 AM io.selendroid.io.ShellCommand exec
INFO: executing command: C:\Users\mawal2\Documents\android\adt-bundle-windows-x8
6_64-20140702\sdk\build-tools\android-4.4W\aapt.exe remove C:\Users\mawal2\Downl
oads\selendroid-test-app-0.11.0.apk META-INF/ANDROIDD.SF
Oct 16, 2014 7:57:24 AM io.selendroid.io.ShellCommand exec
INFO: executing command: C:\Users\mawal2\Documents\android\adt-bundle-windows-x8
6_64-20140702\sdk\build-tools\android-4.4W\aapt.exe remove C:\Users\mawal2\Downl
oads\selendroid-test-app-0.11.0.apk META-INF/ANDROIDD.RSA
Oct 16, 2014 7:57:24 AM io.selendroid.io.ShellCommand exec
INFO: executing command: C:\Users\mawal2\Documents\android\adt-bundle-windows-x8
6_64-20140702\sdk\build-tools\android-4.4W\aapt.exe remove C:\Users\mawal2\Downl
oads\selendroid-test-app-0.11.0.apk META-INF/NDKEYSTO.SF
Oct 16, 2014 7:57:24 AM io.selendroid.io.ShellCommand exec
INFO: executing command: C:\Users\mawal2\Documents\android\adt-bundle-windows-x8
6_64-20140702\sdk\build-tools\android-4.4W\aapt.exe remove C:\Users\mawal2\Downl
oads\selendroid-test-app-0.11.0.apk META-INF/NDKEYSTO.RSA
Oct 16, 2014 7:57:24 AM io.selendroid.io.ShellCommand exec
INFO: executing command: C:\Program Files\Java\jdk1.8.0_20\bin\bin\jarsigner.exe
-sigalg MD5withRSA -digestalg SHA1 -signedjar C:\Users\mawal2\Downloads\resigne
d-selendroid-test-app-0.11.0.apk -storepass android -keystore C:\Users\mawal2\.a
ndroid\debug.keystore C:\Users\mawal2\Downloads\selendroid-test-app-0.11.0.apk a
ndroiddebugkey
Oct 16, 2014 7:57:24 AM io.selendroid.SelendroidLauncher launchServer
SEVERE: Error occurred while building server: An error occurred while resigning
the app 'selendroid-test-app-0.11.0.apk'.
io.selendroid.exceptions.SessionNotCreatedException: An error occurred while res
igning the app 'selendroid-test-app-0.11.0.apk'.
at io.selendroid.server.model.SelendroidStandaloneDriver.initApplication
sUnderTest(SelendroidStandaloneDriver.java:114)
at io.selendroid.server.model.SelendroidStandaloneDriver.<init>(Selendro
idStandaloneDriver.java:82)
at io.selendroid.server.SelendroidStandaloneServer.initializeSelendroidS
erver(SelendroidStandaloneServer.java:61)
at io.selendroid.server.SelendroidStandaloneServer.<init>(SelendroidStan
daloneServer.java:50)
at io.selendroid.SelendroidLauncher.launchServer(SelendroidLauncher.java
:49)
at io.selendroid.SelendroidLauncher.main(SelendroidLauncher.java:105)
Caused by: io.selendroid.exceptions.ShellCommandException: An error occured whil
e executing shell command: C:\Program Files\Java\jdk1.8.0_20\bin\bin\jarsigner.e
xe -sigalg MD5withRSA -digestalg SHA1 -signedjar C:\Users\mawal2\Downloads\resig
ned-selendroid-test-app-0.11.0.apk -storepass android -keystore C:\Users\mawal2\
.android\debug.keystore C:\Users\mawal2\Downloads\selendroid-test-app-0.11.0.apk
androiddebugkey
at io.selendroid.io.ShellCommand.exec(ShellCommand.java:49)
at io.selendroid.builder.SelendroidServerBuilder.signTestServer(Selendro
idServerBuilder.java:274)
at io.selendroid.builder.SelendroidServerBuilder.resignApp(SelendroidSer
verBuilder.java:134)
at io.selendroid.server.model.SelendroidStandaloneDriver.initApplication
sUnderTest(SelendroidStandaloneDriver.java:112)
... 5 more
Caused by: io.selendroid.exceptions.ShellCommandException:
... 9 more
Exception in thread "main" io.selendroid.exceptions.SessionNotCreatedException:
An error occurred while resigning the app 'selendroid-test-app-0.11.0.apk'.
at io.selendroid.server.model.SelendroidStandaloneDriver.initApplication
sUnderTest(SelendroidStandaloneDriver.java:114)
at io.selendroid.server.model.SelendroidStandaloneDriver.<init>(Selendro
idStandaloneDriver.java:82)
at io.selendroid.server.SelendroidStandaloneServer.initializeSelendroidS
erver(SelendroidStandaloneServer.java:61)
at io.selendroid.server.SelendroidStandaloneServer.<init>(SelendroidStan
daloneServer.java:50)
at io.selendroid.SelendroidLauncher.launchServer(SelendroidLauncher.java
:49)
at io.selendroid.SelendroidLauncher.main(SelendroidLauncher.java:105)
Caused by: io.selendroid.exceptions.ShellCommandException: An error occured whil
e executing shell command: C:\Program Files\Java\jdk1.8.0_20\bin\bin\jarsigner.e
xe -sigalg MD5withRSA -digestalg SHA1 -signedjar C:\Users\mawal2\Downloads\resig
ned-selendroid-test-app-0.11.0.apk -storepass android -keystore C:\Users\mawal2\
.android\debug.keystore C:\Users\mawal2\Downloads\selendroid-test-app-0.11.0.apk
androiddebugkey
at io.selendroid.io.ShellCommand.exec(ShellCommand.java:49)
at io.selendroid.builder.SelendroidServerBuilder.signTestServer(Selendro
idServerBuilder.java:274)
at io.selendroid.builder.SelendroidServerBuilder.resignApp(SelendroidSer
verBuilder.java:134)
at io.selendroid.server.model.SelendroidStandaloneDriver.initApplication
sUnderTest(SelendroidStandaloneDriver.java:112)
... 5 more
Caused by: io.selendroid.exceptions.ShellCommandException:
... 9 more
C:\Users\mawal2\Downloads>
Я думаю, что проблема связана с переменной среды Java или Java. Я прочитал много руководств и постов на форуме и пробовал разные способы, но всегда получаю один и тот же результат. Переменные env в настоящее время настраиваются следующим образом: в разделе "Пользовательские переменные для":
ANDROID_HOME: C: \ Users \ mawal2 \ Documents \ android \ adt-bundle-windows-x86_64-20140702\ sdk
JAVA_HOME: C: \ Program Files \ Java \ jdk1.8.0_20 \ bin
В разделе "Системные переменные":
- Путь: %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Windows\CCM;C:\Program Files\OpenVPN\bin;C:\Users\mawal2\Documents\ Android \ вст-пачке окна-x86_64-20140702\ SDK \ Tools\;C:\Users\mawal2\Documents\ Android \ вст-пачке окна-x86_64-20140702\ SDK \ платформа -tools\;C:\Program Files\Java\jdk1.8.0_20\bin\;
Моя ОС - Windows 8.1 Корпоративная
Я очень благодарен за любую помощь, которую я могу получить!
С наилучшими пожеланиями Магнус
1 ответ
Я решил проблему, когда An error occured whil
e executing shell command: C:\Program Files\Java\jdk1.8.0_20\bin\bin\jarsigner.e
xe
Рядом с бин \ бин есть неправильные слова. Решил это, изменив домашнюю переменную Java на: JAVA_HOME: C:\Program Files\Java\jdk1.8.0_20\
Я также замечаю, что для меня изменения переменных выполняются только после перезагрузки компьютера, это может быть причиной того, что мне не удалось решить эту проблему раньше.