Решил описать возможные ошибки при установке Appium на Windows10.
В статье http://appium.io/sla...pium-on-windows указаны все шаги, которые нужно сделать для установки:
1. Скачиваем с официального сайта дистрибутив и устанавливаем. После этого в переменную среды PATH нужно прописать путь до корня установившегося node. Если все по умолчанию, то так C:\Program Files\nodejs\
2. Скачиваем с официального сайта Android SDK. В процессе установки он спросит, куда устанавливать tools. По умолчанию это C:\Users\user\AppData\Local\Android. Запомним этот путь.
После установки нужно добавить переменную среды ANDROID_HOME, а в ней указать соответствующий путь C:\Users\user\AppData\Local\Android\sdk
3. Скачиваем с официального сайта JDK. После установки нужно будет создать переменную среды JAVA_HOME и прописать туда путь до корня jdk, например C:\Program Files\Java\jdk1.8.0_60
4. Скачиваем Apache Ant с официального сайта. Он не требует установки, достаточно распаковать архив, например, сюда C:\Users\user\. Так же добавляем в переменную среды PATH путь, где лежит ant. Как правило, это выглядит так C:\Users\user\apache-ant-1.9.6\bin
5. Устанавливаем Apache Maven. Так же скачиваем с офиц. сайта и распаковываем архив.
Добавляем переменную M2HOME со значением C:\Users\user\apache-maven-3.3.3, переменную M2 со значением %M2_HOME%\bin и в PATH добавляем %M2%.
6. Устанавливаем git. Скачиваем с офиц. сайта. Не забываем добавить C:\Program Files (x86)\Git\bin в переменную PATH.
7. Устанавливаем cURL. Скачиваем с офиц. сайта и добавляем C:\Users\user\curl-7.45.0-win32-mingw\bin в PATH.
Не забываем, что после изменений переменных среды, нужно перезагрузиться!
Это были необходимые для работы сторонние программы. Теперь нужно скачать репозиторий appium.
8. Открываем консоль cmd и заходим в любую директорию, например, в созданную при установке AndroidSDK папку C:\Users\user\AndroidStudioProjects и из командной строки клонируем git clone https://github.com/appium/appium.git
9. Заходим внутрь скачавшегозя репозитория appium и запускаем команду reset.bat --android --selendroid --verbose
10. Сам аппиум стартуется командой node . внутри папки appium.
Но все веселье как раз при запуске reset.bat.
Чтобы избежать всех последующих ошибок, нужно запустить Android SDK и открыть меню Tools > Android > Sdk Manager.
Здесь мы добавляем все последние платформы android, можно начинать с Android 4.0.
Это нужно для того, чтобы скачались и поставились все последнии версии API.
Т.к. я этого не знал, столкнулся с рядом проблем, которые так же видел в интернете, но ответы на них я не нашел, поэтому озвучу:
1.
BUILD FAILED
C:\Users\user\AndroidStudioProjects\appium\lib\devices\android\bootstrap\build.xml:49: Source resource does not exist: C:\Users\user\AndroidStudioProjects\appium\lib\devices\android\bootstrap\project.properties
В xml файле в этой строчке такая запись: <loadproperties srcFile="project.properties" />
Чтобы ошибка не возникала, нужно добавить файл C:\Users\user\AndroidStudioProjects\appium\lib\devices\android\bootstrap\project.properties, а в нем прописать target=android-23.
На самом деле версию android нужно писать ту, что лежит здесь C:\Users\user\AppData\Local\Android\sdk\sources. По умолчанию везде создаются файлы project.properties с android-19. Поэтому если не установить предыдущие версии, то вылезет ошибка.
2.
BUILD FAILED
C:\Users\user\AppData\Local\Android\sdk\tools\ant\uibuild.xml:162: Android Target is not set.
В xml файле в этой строчке такая запись <getuitarget compileClassPathOut="project.target.class.path" />.
Делаем то, что указано в первой ошибке - создаем файл project.properties, а в нем пишем target=android-23.
3.
BUILD FAILED
C:\Users\user\AppData\Local\Android\sdk\tools\ant\build.xml:538: Unable to resolve project target 'android-19'
В этой строчке вот такая запись minSdkVersionOut="project.minSdkVersion".
Если открыть файл reset.bat, то можно видеть, что команда ant debug запускается в папке submodules\unlock_apk. Все просто - идем туда, правим файл project.properties.
Тоже самое может повториться в submodules\io.appium.android.ime и в submodules\io.appium.settings
4.
[ERROR] Failed to execute goal com.simpligility.maven.plugins:android-maven-plugin:4.1.1:generate-sources (default-generate-sources) on project android-driver-app: Execution default-generate-sources of goal com.simpligility.maven.plugins:android-maven-plugin:4.1.1:generate-sources failed: Invalid SDK: Platform/API level 16 not available. This command should give you all you need:
[ERROR] C:\Users\user\AppData\Local\Android\sdk\tools\android update sdk --no-ui --obsolete --force
Предлагает переустановить Android SDK, т.к. не доступна API level 16.
Как я понял, это происходит потому что android-maven-plugin в мавен репозитории очень устаревший http://mvnrepository...id-maven-plugin и с октября 2014 года его никто не обновлял. Тут я пока нашел только одно решение - установить API 16. То есть нужно запустить Android SDK и открыть меню Tools > Android > Sdk Manager и поставить старые версии андроид.
Вероятно, можно еще самому собрать android-maven-plugin и положить его домашний репозиторий C:\Users\user\.m2\repository\com\simpligility\maven\plugins.