- First methods: https://gorails.com/setup/ubuntu/14.04
cd git clone https://github.com/rbenv/rbenv.git ~/.rbenv echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(rbenv init -)"' >> ~/.bashrc exec $SHELL
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc exec $SHELL
rbenv install 2.3.1 rbenv global 2.3.1 ruby -v The last step is to install Bundler gem install bundler rbenv users need to run rbenv rehash after installing bundler.
Download Android SDK and set all the paths to .bashrc: export ANDROID_HOME=~/android-sdk-linux export PATH=${PATH}:$ANDROID_HOME/tools export PATH=${PATH}:$ANDROID_HOME/platform-tools export PATH=${PATH}:$ANDROID_HOME/add-ons
And update to install build-tools etc: android update sdk --no-ui
Install calabash for android: $ gem install calabash-android
-
Second methods: https://github.com/calabash/calabash-android
-
Third methods: http://calaba.sh - calabash page
https://blog.testmunk.com/tutorial-for-automated-mobile-app-testing-calabash/ - A Beginner's Guide to Automated Mobile App Testing -> useful blog on configuration and setup
http://qa-helper.com/android-calabash/
Installation: Install Android Studio Install Android studio platform tools Install ruby if not available Install calabash gem calabash-android gen to generate test structure Configuration: Set ANDROID_HOME in console variable . Export ANDROID_HOME=<path_to_sdk_folder> Download apk file into test folder Resign application calabash-android resign "APK_NAME" To start calabash console : calabash-android console "APK_NAME" To resinstall application on device : reinstall_apps To start calabash server from a console : start_server_in_background To check page elements o : query("") to get all elements on current opened page on device To exit a console : quit To run calabash tests run : calabash-android run "APK_NAME"
Resign application:
calabash-android resign dashlinq.apk If resign failed: keytool -genkey -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -keysize 2048 -validity 10000 -dname "CN=Android Debug,O=Android,C=US"
Start calabash-console:
calabash-android console dashlinq.apk
Start test server:
irb(main):001:0> start_test_server_in_background
If start test server do not work:
irb(main):001:0> reinstall_apps
View the elements of the program:
query ("*")
To exit from console environment:
quit
export ANDROID_HOME=~/android-sdk-linux export ADB_DEVICE_ARG=***** (* - device id) - If there are plugged multiple devices ANDROID_SERIAL=$ADB_DEVICE_ARG; export ANDROID_SERIAL Navigate to calabash test folder: cd calabash-test-android calabash-android resign deshlinq.apk calabash-android console deshlinq.apk reinstall_apps quit calabash-android run deshlinq.apk or add the settings in "start_test.sh" script and run: ./start_test.sh
calabash-android run dashlinq.apk features/example.feature
calabash-android run dashlinq.apk features/example.feature --tags @example
calabash-android run dashlinq.apk --format html --out example.html
- sudo apt-get install python-setuptools
- sudo easy_install --upgrade androidviewclient
- sudo apt-get install python-pip
- sudo apt-get install git
- sudo pip install git+https://github.com/dtmilano/AndroidViewClient.git
- Clone lib https://github.com/dtmilano/AndroidViewClient.git
- export ANDROID_VIEW_CLIENT_HOME=/path/to/androidviewclient/
Verifying environment setup $ cd /path/to/androidviewclient $ cd examples $ python check-import.py
if everything is fine, you will receive OK
sudo nano /etc/ppp/peers/grom: pty "pptp 24.5.186.208 --nolaunchpppd" debug nodetach logfd 2 noproxyarp ipparam GROMAUDIO remotename GROMAUDIO name dsigov require-mppe-128 nobsdcomp nodeflate lock refuse-eap refuse-chap Refuse-mschap
Add to /etc/ppp/chap-secrets: dsigov * *
sudo nano /etc/ppp/ip-up.d/add-subnet: #!/bin/bash [ "$PPP_IPPARAM" = "GROMAUDIO" ] || exit 0 route add -net 192.168.0.0/24 dev $PPP_IFACE
sudo chmod a+x /etc/ppp/ip-up.d/add-subnet sudo pon grom # to connect VPN
Настройка SSH key: http://www.howtogeek.com/168147/add-public-ssh-key-to-remote-server-in-a-single-command/
-
Попробовать перезагрузить телефоны.
-
Попробовать запустить adb с правами рута: sudo adb kill-server-> sudo adb start server-> sudo adb devices - возможно так будет видно телефон
-
Добавляем два правила для udev.
Создаем новый файл 50-android.rules в /etc/udev/rules.d sudo gedit /etc/udev/rules.d/50-android.rules idVendor поменять на наш девайс: lsusb - чтобы посмотреть Для Jaunty/Gusty/Hardy, добавляем следующее: SUBSYSTEM == "usb", SYSFS {idVendor} == "0bb4", MODE = "0666"
Создаем новый файл 90-android.rules в /etc/udev/rules.d sudo gedit /etc/udev/rules.d/90-android.rules idVendor поменять на наш девайс: lsusb - чтобы посмотреть Для Jaunty/Gusty/Hardy, добавляем следующее: SUBSYSTEM == "usb", ATTR {idVendor} == "0bb4", MODE = "0666"
- Выставляем права на файлы: sudo chmod a + rx /etc/udev/rules.d/50-android.rules sudo chmod a + rx /etc/udev/rules.d/90-android.rules после всего сделанного возможно понадобится перезапуск сервисов, то есть делаем: adb kill-server sudo /etc/init.d/udev restart