Instalasi Phantomjs di Mac OSX El Capitan
Phantomjs merupakan tool headless browser yang dapat kita gunakan untuk melakukan pengujian aplikasi berbasis web. Biasanya digunakan side-by-side dengan tool dari masing-masing bahasa pemrograman, contohnya adalah via codeception di PHP
Instalasi
Untuk dapat menjalankan phantomjs, sang developer telah menyediakan binary package yang dapat kita unduh ke dalam lingkungan Mac. Sebenarnya apabila kita menggunakan brew
, ada beberapa paket yang sepertinya merupakan distribusi phantomjs. Namun ketika dicoba untuk diinstall, terdapat pesan bahwa versi yang ada di brew
tidak cocok untuk diinstall di Yosemite/El Capitan.
$ brew search phantomjs
homebrew/versions/phantomjs17 homebrew/versions/phantomjs198
homebrew/versions/phantomjs182 phantomjs
homebrew/versions/phantomjs192
Caskroom/cask/phantomjs
Kemudian ketika kita ingin mencoba melakukan instalasi, terdapat pesan bahwa versi yang ada di brew
tidak cocok dengan OS.
$ brew install phantomjs
phantomjs: OS X Yosemite or older is required.
Error: An unsatisfied requirement failed this build.
Untuk sementara sembari menunggu update dari para kontributor brew
, kita dapat melakukan unduh phantomjs secara manual.
Langkah pertama yang dilakukan adalah unduh phantomjs disini. Kemudian setelah itu ekstrak unduhan
$ mv phantomjs.zip ~
$ unzip phantomjs.zip
Setelah selesai, kita dapat melakukan setting pada ~/.bash_profile
agar perintah phantomjs
dapat diakses tanpa harus mencantumkan path dari tempat kita menyimpan phantomjs
. Buka editor pilihan, kemudian tambahkan baris berikut:
export PATH=$PATH:$HOME/phantomjs/bin
Selanjutnya, jalankan perintah source
untuk memaksa shell untuk membaca ulang konfigurasi di .bash_profile
$ source ~/.bash_profile
Untuk menjalankan, eksekusi perintah di bawah ini untuk menjalankan phantomjs:
$ phantomjs --webdriver=4444
Problem Pada Saat menjalankan Phantomjs
Saya menemukan masalah ketika mencoba menjalankan phantomjs, yaitu ketika dieksekusi selalu muncul pesan error:
$ phantomjs --webdriver=4444
Killed: 9
Setelah dicari di google, ternyata banyak yang mengalami masalah serupa, dan dapat diselesaikan dengan menggunakan executable unpacker via upx
, yang dapat diinstall via brew
$ brew install upx
Berikutnya, kita jalankan upx
ke phantomjs
:
Setelah selesai, kita dapat mencoba menjalankan kembali phantomjs
:
Ok, tampaknya kini phantomjs
sudah dapat digunakan.
Happy Coding :-)