En este post nuevo trataré de explicar todo lo que se tiene que hacer para hacer un setup correcto de Appium, el cual tiene muchas dependencias de diferentes herramientas y librerías, sobre todo en Mac.
¿Que es Appium?
De la pagina oficial se desprende la siguiente definición: Appium es un framework de automatización de pruebas open source para usar con apps nativas, webs, móvil e híbridas. Sirve para usar con iOs, Android y Windows usando el protocolo WebDriver.
Flujo Básico
Instalación
Primero mostraré un pequeño diagrama con sus dependencias para tener una visión general del setup.
Pasos
- En Mac OSX el primer paso es instalar/actualizar Xcode. Esto a veces conlleva a la actualización del sistema operativo.
- Si no tienes OSX actualizado, actualízalo.
- Para instalar/actualizar Xcode hay que buscarlo en la app store.
- Necesitas tu apple account.
- Ponlo a bajar y ve por una ?
- Luego ve por otra más porque el download es de 4 Gb y luego sigue la instalación con reinicios y todo eso incluído
- Instalar Homebrew.
- Abrir una terminal.
- Teclear
brew --version
- Si recibes
-bash: brew: command not found
entonces corre lo siguiente:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- Si en vez de eso recibes un error entonces tienes Brew descompuesto por un update de Yosemite (Si tienes rato con tu Mac). Hay que hacer
which brew
Si regresa un path, eso significa que sí está instalado. - Necesitamos hacer
cd /usr/local/Library
- Luego
git pull origin master
- Luego
brew update && brew uninstall nodejs && brew install nodejs
- Finalmente para estar seguros que quedó instalado:
brew --version
- El siguiente paso es instalar Java.
- Hay que ir aquí
- Aceptar Términos y Condiciones.
- Bajar el JDK para Mac OSX.
- Instalar el JDK.
- Luego hay que instalar Android Studio (se puede instalar solo el SDK o todo el Android Studio, lo que realmente necesitamos aqui es el SDK pero el Android Studio lo incluye).
- Ir aquí
- Bajarlo e instalar.
- Obtener Paths for Android SDK y Java JDK.
- Primero vamos con Java, hay que abrir la terminal.
- Teclear
/usr/libexec/java_home -V
- Copiémoslo en algun lado para después.
- Luego vamos con Android. Teclear
find ~ -name "adb"
- Hay que copiar el path que lanza (ignorando los ejemplos).
- Ahora tenemos que agregar esas rutas a nuestro path.
- Teclear
nano ~/.bash_profile
en la terminal. - Ahí tenemos que agregar las siguientes líneas.
- Para guardar y salir hay que teclear.
- Finalmente teclear
source ~/.bash_profile
en la terminal para que los cambios hagan efecto.
export PATH=$PATH:path/a/android-sdk/platform-tools/:path/a/android-sdk/tools/ export JAVA_HOME="/path/a/java/home/" export ANDROID_HOME="/path/a/android/sdk"
ctrl + X
luego
enter - Teclear
- Actualizar Android SDK.
- En la terminal de nuevo teclear
android
. Esto funciona debido a la primer linea que agregamos en el archivo.bash_profile
. - Abrirá una GUI, ahi hay que seleccionar todas las versiones desde la mas actual hasta al menos la 4.0, todo bajo “extras” y todo bajo “tools”.
- Click en el botón “Install XX packages” (donde XX es un número).
- Seleccionar un ítem de la lista de la izq. en la siguiente ventana y seleccionar aceptar términos.
- De nuevo es tiempo para una :beer:
- Repetir estos 5 pasos previos para actualizar hasta que ya no haya actualizaciones disponibles.
- En la terminal de nuevo teclear
- Instalar Node.js.
- Primero veremos si ya está instalado con el siguiente comando en la terminal:
node --version
- Luego
which node
- Si aparece
-bash: node: command not found
después del primer comando y nada aparece luego del segundo comando, no está instalado. Si tenemos una versión en el primero podemos saltar esto. - Si no está instalado para hacerlo tecleamos
brew install node
- Primero veremos si ya está instalado con el siguiente comando en la terminal:
- ¡Finalmente a instalar Appium!
- Abrir la terminal y correr los siguientes comandos de uno por uno.
npm install -g appium npm install wd npm install -g appium-doctor
- Correr appium doctor para revisar la instalación. En la terminal escribir
appium-doctor --ios
. Si hay errores seguir las sugerencias. - Luego escribir
appium-doctor --android
. Igual que en la anterior, Si encuentra errores, seguir las sugerencias para corregirlos.
- Abrir la terminal y correr los siguientes comandos de uno por uno.
- Instalar RVM en Mac. Para mas información acerca de RVM https://rvm.io/
- Teclear
\curl -sSL https://get.rvm.io | bash
en la terminal. - Esperar a que descargue.
- Teclear
- Crear un proyecto en donde trabajar.
- Crear una carpeta en el lugar deseado.
- Dentro de esa carpeta vamos a usar nuestro editor favorito y crear un archivo llamado
Gemfile
. Así, con G mayúscula y sin extensión. - Adentro de ese archivo vamos a escribir las siguientes líneas.
source 'http://rubygems.org' gem 'appium_lib' gem 'rspec' gem 'appium_console', '=1.0.4' gem 'os' gem 'allure-rspec'
- Guardamos y luego vamos y abrimos la terminal.
- Teclear
cd /path/a/la/carpeta/del/proyecto
- Correr lo siguiente desde esa carpeta
rvm use --create 2.3.0
En caso de querer usar ruby 2.3.0. Puedes cambiar la versión de ruby modificando esta línea. - Luego correr
gem install bundler
- Luego, finalmente correr
bundle install
- Esperar a que todas las Gemas se instalen y listo.
¡Listo! Ya puedes empezar a codear tu proyecto usando Appium.