Tutorial Performance Testing Menggunakan Apache JMeter
Bismillah…
sebelum nya saya sudah sempat membahas tentang performance testing pada link artikel ini : https://radytiarifandi.medium.com/performance-testing-1093a4528db8 dan langkah instalasi Apache JMeter sudah saya muat di link artikel ini : https://radytiarifandi.medium.com/jmeter-instalasi-bd5b07319a0e
Test Plan
kita dapat membuat test plan yang berisi urutan komponen-komponen uji yang berfungsi sebagai penentu bagaimana sebuah server akan disimulasikan.
ubah nama test plan menjadi “test 1” lalu save dengan menekan ctrl + s
Menambahkan Thread Group
Thread Group merupakan elemen utama yang digunakan untuk mengatur dan menjalankan tes kinerja. Thread Group bertindak sebagai kontainer untuk sejumlah thread, yang masing-masing mensimulasikan pengguna virtual yang melakukan tindakan tertentu pada aplikasi yang sedang diuji.
- Klik kanan pada nama Test Plan yang sudah kita simpan, “Contoh Test Plan 1”
- Arahkan mouse, pilih Add >
- Arahkan kembali mouse, pilih Threads (Users) >
- Pilih Thread Group
Di thread group terdapat beberapa properties yang dapat mempengaruhi skenario pengujian performance yang dijalankan;
1. Number of Threads (Users)
- Pengertian: Ini menentukan jumlah thread atau pengguna virtual yang akan disimulasikan oleh JMeter. Setiap thread berfungsi sebagai pengguna virtual yang menjalankan serangkaian permintaan atau tindakan terhadap aplikasi yang diuji.
- Penggunaan: Misalnya, jika Anda mengatur Number of Threads menjadi 100, JMeter akan mensimulasikan 100 pengguna virtual yang mengakses aplikasi pada waktu yang bersamaan atau hampir bersamaan, tergantung pada ramp-up period yang diatur.
2. Ramp-Up Period (Seconds)
- Pengertian: Ini menentukan berapa lama waktu yang diperlukan untuk meluncurkan semua thread. Waktu ini dibagi secara merata di antara semua thread.
- Penggunaan: Jika Anda mengatur Number of Threads menjadi 100 dan Ramp-Up Period menjadi 10 detik, maka JMeter akan meluncurkan 100 thread secara bertahap selama periode 10 detik, dengan rata-rata 10 thread per detik. Ramp-Up Period membantu menghindari memulai semua thread secara bersamaan, yang bisa menyebabkan lonjakan beban yang tidak realistis pada aplikasi yang diuji.
3. Loop Count
- Pengertian: Ini menentukan berapa kali setiap thread akan mengulang skenario tes yang telah ditentukan. Satu loop mencakup satu siklus lengkap dari tindakan yang dilakukan oleh thread.
- Penggunaan: Jika Loop Count diatur menjadi 5, setiap thread akan menjalankan skenario tes sebanyak lima kali. Anda juga bisa mengatur Loop Count ke opsi “forever” untuk menjalankan tes tanpa henti, sampai Anda menghentikannya secara manual.
Contoh Penggunaan
Jika Anda memiliki pengaturan sebagai berikut:
- Number of Threads (Users): 50
- Ramp-Up Period: 20 detik
- Loop Count: 10
Ini berarti JMeter akan mensimulasikan 50 pengguna virtual, yang akan diluncurkan secara bertahap dalam waktu 20 detik (2,5 thread per detik), dan setiap pengguna virtual akan menjalankan skenario tes sebanyak 10 kali.
Pengaturan ini membantu mensimulasikan berbagai beban pengguna dan memeriksa bagaimana aplikasi merespons berbagai kondisi kinerja, seperti beban tinggi dan durasi tes.
Untuk contoh yang akan kita jalankan, masukkan number of threads = 2, ramp-up period = 10, dan loop = 60.
Menambah HTTP Header Manager
Cara menambahkan http header manager :
- Pada Thread Group, klik kanan
- Arahkan mouse pada “Add >”
- Arahkan mouse pada “Config Element >”
- Pilih “Http Header Manager”
Pada header manager, tambahkan informasi berupa Content-Type dan Authorization, dimana value dari Authorization-nya adalah Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJINTUwZGFjMjUwMjE4OTQyZjRmOTEzOTFiYjZkY2NjNSIsInN1YiI6IjYwYWY2MDAxYzVjMWVmMDA1OWU2MzVIYiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uljoxfQ.wGzbkGdNmzm7cWjLfyNFVGdpLJKMelfCaoEbUuYs-CA
seperti pada gambar di atas.
Menambah HTTP Request Sampler
Cara menambahkan http request sampler :
- Pada Thread Group, klik kanan
- Arahkan mouse pada “Add >”
- Arahkan mouse pada “Sampler >”
- Pilih “HTTP Request”
Menambah Listener
Listener memiliki banyak jenis, teman-teman bisa memilih dalam bentuk apa hasil pengujian itu disajikan. Bisa dalam bentuk tree, table, graph, atau dalam bentuk log.
Cara menambahkan listener :
- Pada Thread Group, klik kanan
- Arahkan mouse pada “Add >”
- Arahkan mouse pada “Listener >”
- Teman-teman bisa memilih jenis listener apa saja (disini saya menggunakan listener dalam bentuk tree)
Jadi, kerangka pengujian kita kali ini adalah seperti pada gambar berikut :
setelah kerangka planning sudah siap, kita running untuk menjalankan skenario yang telah kita susun.
Referensi :
- https://www.angleritech.com/apache-jmeter-best-qa-tool-performance-and-load-testing/
- https://medium.com/geekculture/performance-testing-with-jmeter-af94a397cd0b
- https://medium.com/bosphorusiss/performance-and-load-testing-with-jmeter-c340dfa0f1cf
- https://hariatylumbantobing.medium.com/tutorial-performance-testing-menggunakan-jmeter-beginner-54d3c7ef4ee