Cara Menggunakan JMeter
JMeter adalah salah tool yang bisa digunakan untuk performance test. Mengenai spesifikasi lengkap dari JMeter bisa di lihat di sini.
https://medium.com/@pfgaharu/performance-testing-51dc0f02e2c7
Kali ini saya ingin sedikit sharing bagaimana cara instalasi, fitur-fitur yang ada di dalamnya sampai memahami reportnya.
Cara Instalasi di Mac:
1. Install Java
cek java version di terminal : java -version
2. Download Jmeter
di https://jmeter.apache.org/download_jmeter.cgi
Binaries : apache-jmeter-5.3.tgz
3. Ekstrak file yang sudah terdownload
4. Pindahkan file JMeter di folder yang di inginkan
5. Buka terminal, masuk ke folder apache-jmeter-5.3 → bin
6. sh jmeter.sh
Setelah step 6 seharusnya aplikasi jmeter berhasil terbuka seperti di bawah :
Lalu kita coba tambah thread group :
Lalu apa kegunaan dari Thread Group ? Disini kita bisa menyesuikan requirement yang ingin kita simulasikan.
Number of Threads (users) : Jumlah maksimum pengguna yang ingin kita jalankan
Ramp-Up Period (in seconds) : berapa lama waktu yang dibutuhkan JMeter untuk meningkatkan dari nol pengguna ke sejumlah X thread
Loop Count : berapa kali kita ingin setiap pengguna menjalankan skrip kita
Setelah kita set Thread Group, kita bisa menambahkan HTTP Request. Jadi,kegunaannya untuk JMeter mengetahui server mana yang akan kita tuju.
Berikutnya yaitu Listener, yang mana digunakan untuk menampilkan hasil eksekusi sehingga penguji mengetahui statistiknya. Ada sekitar 15 listener di JMeter tetapi yang paling banyak digunakan adalah table, tree, dan graph.
Requests yang dikirim ke server dapat dijadikan parameter lebih lanjut menggunakan beberapa elemen konfigurasi yang dijalankan sebelum request sebenarnya. Contoh sederhananya adalah membaca nilai variabel dari file CSV yang menggunakan konfigurasi kumpulan data CSV.
Dalam rangka mesetting parameterize request tersebut bisa di lihat di bawah.
Terakhir saya ingin menjelaskan menu Pre Processors, yang mana digunakan untuk menjalankan beberapa tindakan sebelum membuat Sampler Request.
Lalu bagaimana cara kita menghasilkan report dari JMeter ini ? Berikut caranya :
1. Via terminal masuk ke folder apache-jmeter-5.3 → bin
2. Create file .jtl setelah running performance test
sh jmeter -n -t /Users/Documents/apache-jmeter-5.3/example.jmx -l /Users /Documents/ReportJmeter/report.jtl
3. Conver file .jtl to .html
sh jmeter -Jjmeter.reportgenerator.apdex_satisfied_threshold=2000 -Jjmeter.reportgenerator.apdex_tolerated_threshold=4000 -g /Users/Documents/ReportJmeter/report.jtl -o /Users/Documents/ReportJmeterHTML/report
4. Jika mau rerun, hapus terlebih dahulu file .jtl, setelah di rerun ulangin step 2 & 3
Jika proses berhasil dijalankan, akan muncul file seperti di bawah :
Kita bisa menganalisa baik lewat statistics ataupun APDEX. Di table statistics kita bisa melihat response time dan hasil dari executions. Ada yang error ataupun tidak.
Sedangkan APDEX sendiri adalah standar terbuka untuk mengukur kinerja aplikasi dalam hal response time. Semakin baik response time suatu aplikasi di indikasikan dengan angka 1.000.
Semakin rendah dari 1.000 berarti response time nya semakin jelek. Yang mana kita bisa menentukan sendiri value toleransi dan frustasinya.
Pada contoh diatas, batas toleransi yang saya contohkan adalah, dalam waktu 2 detik. Dan tingkat frustasinya adalah 4 detik.
Jadi nilai APDEX tersebut tergantung nilai toleration dan frustration yang kita tentukan di command JMeter diatas.