Membangun Environment Testing Android di Ubuntu Menggunakan Appium

Appium adalah framework testing yang diperuntukkan untuk melakukan test pada aplikasi mobile pada android dan ios baik itu aplikasi native, berbasis web ataupun hybrid. Keunggulan dari appium adalah kita dapat membuat test menggunakan berbagai macam bahasa seperti Java, Python, PHP, Ruby, Javascript. Info lebih lanjut dapat dilihat pada website resmi appium.

Tanpa panjang lebar, mari kita memulai melakukan persiapan yaitu membangun environment untuk testing menggunakan appium di ubuntu. Pada artikel kali ini saya menggunakan Ubuntu desktop versi 15.10 64 bit dan akan menjalankan testing menggunakan Ruby dengan Rspec (akan dibahas di artikel selanjutnya).

  • Instalasi Ruby
~$:sudo apt-get remove --purge -y ruby
~$:\curl -sSL https://get.rvm.io | bash
~$:echo "source $HOME/.rvm/scripts/rvm" >> ~/.bashrc
~$:source ~/.bashrc
~$:rvm install 2.2.3
~$:rvm use 2.2.3
~$:gem install bundler

Pada perintah di atas, kita akan menghapus ruby bawaan ubuntu (jika ada) dan menggantinya menggunakan RVM (Ruby Version Manager) dan menginstall ruby versi stable saat ini (2.2.3). Selain itu kita juga menginstall gem bundler.

  • Instalasi Oracle JDK 8
~$:sudo apt-get purge openjdk-\*
~$:sudo add-apt-repository ppa:webupd8team/java
~$:sudo apt-get update
~$:sudo apt-get install oracle-java8-installer

Pada perintah di atas, kita memastikan menghapus openjdk bawaan ubuntu (jika ada) dan menginstall oracle java8 menggunakan ppa java dari webupd8team

  • Instalasi Android Studio + SDK
    • Download android studio terbaru di sini.
    • Ekstrak file hasil download:
~$:cd ~/Downloads/
~$:tar zxvf android-studio-ide-linux.zip //sesuaikan dengan nama file download
~$:cd android-studio/bin
~$:./studio.sh

Perintah di atas akan menjalankan android studio. Masuk ke Configure => SDK Manager. Pada Tab SDK Platforms, check pada kotak Show Package Details, lalu centang pada komponen Platform, Google APIs, ARM EABI v7a System Image, Intel x86 Atom System Image sesuai pada gambar di bawah. Lakukan untuk API Level dari 17 sampai API Level terakhir (Pada artikel ini sampao API Level 23).

SDK Platforms
Pada tab SDK Tools, klik lagi pada box Show Package Details, dan centang pada semua komponen Android SDK Build-Tools yang tidak Obselete seperti pada gambar di bawah.

SDK Tools
Klik Apply, lalu install untuk memulai instalasi. Proses instalasi akan memakan waktu lumayan lama (besarnya bisa mencapai 5 GB), karena itu pastikan anda tidak sedang menggunakan koneksi yang dilimit oleh paket data. Jika sudah selesai maka klik finish dan akhiri program android studio.

  • Konfigurasi .bashrc

Edit file ~/.bashrc anda dan masukkan line berikut ke dalamnya, lalu jalankan command source ~/.bashrc

export ANDROID_HOME=$HOME/Android/Sdk                          
export ANDROID_SDK=$ANDROID_HOME                               
PATH=$PATH:$ANDROID_HOME/build-tools                           
PATH=$PATH:$ANDROID_HOME/platform-tools                        
PATH=$PATH:$ANDROID_HOME/tools                                 
export JAVA_HOME=(/usr/lib/jvm/java-8-oracle)                    
export PATH=$JAVA_HOME/jre/bin:$PATH                             
                                                               
export PATH
  • Instalasi NPM + grunt, grunt-cli dan appium
~$:sudo apt-get remove --purge -y node nodejs
~$:curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash
~$:~/.nvm/nvm.sh
~$:nvm install 4.2.3
~$:nvm use 4.2.3
~$:npm install -g grunt grunt-cli appium --verbose

Pada perintah di atas, kita memastikan untuk menghapus nodejs bawaan ubuntu (jika ada) dan melakukan instalasi NVM (Node Version Manager) kemudian dari sana kita menginstall nodejs versi 4.2.3 (LTS) kemudian dilanjutkan dengan menginstall grunt, grunt-cli dan appium menggunakan npm.

Jika instalasi telah selesai, jalankan command: appium

Jika instalasi berhasil, maka akan muncul tulisan seperti di bawah ini:

info: Welcome to Appium v1.4.16 (REV ae6877eff263066b26328d457bd285c0cc62430d)
info: Appium REST http interface listener started on 0.0.0.0:4723
info: Console LogLevel: debug

Selamat, persiapan environment untuk mobile testing menggunakan appium untuk android di ubuntu telah berhasil. Nantikan artikel selanjutnya yang akan membahas testing sederhana menggunakan Ruby dan Rspec.

PHP Script – Membentuk Segitiga Siku-Siku Dengan Karakter Bintang (*)

Pada tutorial ini, saya iseng mem-posting tugas kuliah saya (master dimohon tidak membully 😀 ) di mana tugasnya cukup sederhana, yaitu membuat script untuk membentuk segitiga siku-siku yang tingginya disesuaikan dengan inputan user (integer/angka) dan digambarkan dengan mencetak karakter bintang yang membentuk segitiga siku-siku tersebut.

Continue reading PHP Script – Membentuk Segitiga Siku-Siku Dengan Karakter Bintang (*)

Membangun Web Server Lokal Dengan Bitnami WAMP Server

Untuk seorang web programmer, salah satu aplikasi atau layanan yang wajib tersedia pada pc/laptop mereka adalah web server. Dahulu, programmer web diharuskan menginstalasi servis/aplikasi yang diperlukan dalam membangun web server satu per-satu, seperti php library, apache web server, dan database (MySQL server). Hal ini memerlukan waktu terutama dalam sisi konfigurasi yang harus dilakukan manual juga, seperti menghubungkan php library dengan web server.

Continue reading Membangun Web Server Lokal Dengan Bitnami WAMP Server

Sharing File Menggunakan Google Drive

Google Drive adalah salah satu layanan dari Google. Inc berbasis cloud untuk menyimpan serta mengedit file. Ada beberapa file yang secara default didukung untuk bisa langsung diedit dari google drive, yaitu file Document, Presentation, Spreadsheet, Form, Drawing, dan Map. Dengan bantuan Add-On, kita juga bisa mengedit file-file lain secara langsung semisal script bahasa pemrograman.
Continue reading Sharing File Menggunakan Google Drive

Nginx – Alternatif Web Server Open Source

Nginx (baca : engine x) adalah web server dengan kode terbuka dan bisa berjalan pada sistem Unix, Linux, BSD, Mac OS X, Solaris, AIX, HP-AUX, dan Windows. Nginx juga bisa digunakan sebagai proxy server yang mendukung protokol HTTP, IMAP, SMTP dan POP3. Nginx terkenal karena kemampuannya meng-handle banyak koneksi secara bersamaan (10.000 koneksi lebih) dengan pemakaian memory yang sekecil mungkin.

Continue reading Nginx – Alternatif Web Server Open Source

Tips & Trick – Menjalankan Banyak Akun Yahoo Messenger Secara Bersamaan

Normalnya aplikasi Yahoo Messenger pada windows hanya mengijinkan menjalankan satu aplikasi messenger saja. Namun bagaimana bila anda memerlukan 2 akun yahoo messenger online secara bersamaan? sedangkan anda hanya memiliki satu komputer saja? Mudah saja, caranya dengan melakukan perubahan pada kode registry windows.

Ikuti langkah berikut :

Continue reading Tips & Trick – Menjalankan Banyak Akun Yahoo Messenger Secara Bersamaan

Windows – Mengubah Attribut Hidden File Melalui Command Prompt

Jika anda menggunakan windows sebagai sistem operasi, mungkin pernah/sering mengalami file anda tiba-tiba hilang diakibatkan oleh virus (biasanya data di dalam flashdisk). Namun ketika dicekkan melalui windows explorer ternyata flashdisk anda/direktori lokasi file hilang tersebut ukurannya masih sama, mengindikasikan file masih ada namun attribut nya menjadi “tersembunyi” (hidden) oleh virus. Normalnya untuk mengubah attribut file bisa dilakukan dengan meng-klik kanan pada file dan klik properties, namun karena file “tidak terlihat oleh mata”, tentu kita tidak bisa melakukannya dengan cara normal bukan?

Untuk mengatasi hal ini bisa dilakukan dengan fasilitas command prompt windows (cmd). Command prompt windows bisa diakses dengan 2 cara, yaitu:

Continue reading Windows – Mengubah Attribut Hidden File Melalui Command Prompt