All Products
Search
Document Center

Performance Testing:Buat skenario JMeter

Last Updated:Aug 28, 2026

Apache JMeter adalah alat uji stres open source yang mendukung parameterisasi, assertion, dan ekstensi untuk berbagai protokol serta controller, serta memungkinkan Anda menulis skrip kustom untuk mengimplementasikan logika seperti pemrosesan parameter. PTS menjalankan skrip JMeter Anda pada engine JMeter native dan menambahkan skalabilitas horizontal serta integrasi Cloud Monitor untuk pengujian dan diagnostik pemantauan dengan konkurensi tinggi. Topik ini menjelaskan kasus penggunaan uji stres JMeter native di PTS serta cara membuat skenario JMeter, memulai uji stres, dan bekerja dengan laporan uji stres.

Kasus penggunaan

Buat skenario JMeter di PTS dalam situasi berikut:

  • Konkurensi tinggi — Anda memerlukan pengujian stres terdistribusi dengan konkurensi tinggi.

  • Observabilitas Real-time — Anda memerlukan pemantauan Real-time tingkat detik selama uji stres, serta laporan uji stres yang dihasilkan secara otomatis setelah uji stres selesai.

  • Manajemen terpusat — Anda perlu mengelola skrip JMeter dan dependensi lingkungan JMeter secara terpusat.

Batasan

Sebelum membuat skenario JMeter, tinjau batasan berikut:

  • File skrip JMX — Ukuran file tidak boleh melebihi 2 MB. Anda dapat mengunggah beberapa file skrip JMX, tetapi hanya satu file JMX yang dapat digunakan untuk satu uji stres.

  • File JAR — Ukuran file tidak boleh melebihi 10 MB. Sebelum mengunggah file JAR, lakukan debug di lingkungan JMeter lokal Anda untuk memastikan proses debugging berhasil.

  • File CSV — Ukuran file tidak boleh melebihi 60 MB. Jika ukuran file melebihi 60 MB, gunakan fitur OSS data source untuk mengimpor file tersebut.

  • Jumlah file — Jumlah total file non-JMX tidak boleh melebihi 20.

Langkah 1: Buat skenario JMeter

  1. Pada halaman Create JMeter Scenario, masukkan nama di bidang Scenario.

  2. Pada bagian Scenario Settings, unggah skrip uji stres JMeter. Nama file tidak boleh mengandung karakter spasi, dan ekstensinya harus jmx.

    Setelah file uji stres JMX diunggah, PTS secara otomatis melengkapi plug-in yang kurang untuk Anda.

    Jika Anda mengunggah beberapa file JMX, pilih satu file JMX sebagai skrip JMeter yang digunakan untuk memulai skenario uji stres.

  3. Klik Upload File untuk mengunggah file lain, seperti file data dalam format CSV dan plug-in dalam format JAR.

    Penting

    File yang diunggah dengan nama yang sama akan menimpa file yang diunggah sebelumnya. Untuk membandingkan file, peroleh nilai MD5 di kolom Actions file tersebut dan bandingkan dengan nilai MD5 file lokal Anda untuk memastikan apakah file telah berubah.

    Catatan:

    • Saat menyiapkan file CSV, jangan langsung mengubah ekstensi file XLSX. Ekspor file menggunakan perangkat lunak seperti Excel atau Numbers. Jika file dihasilkan oleh program, Anda dapat menggunakan Apache Commons CSV.

    • Jika file data dikaitkan dengan skrip JMX, Anda harus mengubah Filename di CSV Data Set Config menjadi nama file itu sendiri dan jangan menyertakan path. Jika tidak, file data tidak dapat dibaca. Demikian pula, jika Anda menggunakan fungsi __CSVRead atau menentukan file dalam file JAR, Anda harus menggunakan nama file tersebut.

  4. (Opsional) Pilih Split File untuk file CSV agar data dalam file tidak diduplikasi di setiap load generator. Jika opsi ini tidak dipilih, data yang sama akan digunakan di setiap load generator.

  5. Pilih apakah akan menggunakan lingkungan dependensi.

    • Jika Anda memilih Yes, Anda harus memilih lingkungan yang telah dibuat di manajemen lingkungan.

    • Jika Anda memilih No, Anda harus memilih versi JMeter. Apache JMeter 5.0 dan Java 11 didukung.

  6. Konfigurasikan beban untuk skenario tersebut.

  7. (Opsional) Tambahkan pemantauan sumber daya cloud. Dengan menambahkan pemantauan, Anda dapat langsung melihat data pemantauan terkait selama proses uji stres dan dalam laporan uji stres. Fitur ini dinonaktifkan secara default. Untuk mengonfigurasinya, aktifkan sakelar tersebut.

  8. (Opsional) Tambahkan informasi lain. Di sini Anda dapat menambahkan pemilik uji stres dan catatan. Fitur ini dinonaktifkan secara default. Untuk mengonfigurasinya, aktifkan sakelar tersebut.

  9. (Opsional) Konfigurasikan pengaturan lanjutan. Pengaturan lanjutan mencakup pengaturan laju sampling log, konfigurasi DNS, dan pengaturan komponen adaptasi terdistribusi. Pengaturan lanjutan dinonaktifkan secara default. Untuk mengonfigurasinya, aktifkan sakelar tersebut.

    Tab berikut menjelaskan nilai default yang berlaku saat pengaturan lanjutan dinonaktifkan dan item yang dapat Anda konfigurasikan saat pengaturan lanjutan diaktifkan.

Pengaturan lanjutan dinonaktifkan

Pengaturan default digunakan:

  • Sampling Log Sampling Rate diatur ke 1, dan biaya dihitung sebagai (1+rate)*native VUM.

  • Sakelar Clear DNS Cache in Each Loop dimatikan, dan resolver DNS sistem digunakan.

  • Baik Synchronous Timer maupun Constant Throughput Timer berlaku pada satu generator saja.

Pengaturan lanjutan diaktifkan

  • Pengaturan laju sampling log

    Anda dapat menyesuaikan laju sampling log sampling. Laju sampling default adalah 1%. Untuk mengurangi laju sampling, masukkan nilai dalam rentang (0,1]. Untuk meningkatkan laju sampling, masukkan nilai dalam rentang (1,50] yang habis dibagi 10, misalnya 20.

    Jika Anda menentukan laju sampling lebih dari 1%, biaya tambahan sebesar rate% akan dikenakan. Misalnya, jika laju sampling adalah 20%, biaya tambahan sebesar 20%*VUM akan dikenakan.

  • Pengaturan cache DNS

    Anda dapat memilih apakah akan menghapus cache DNS untuk setiap permintaan akses. Jika Anda perlu menghapus cache DNS, Anda dapat menggunakan resolver DNS sistem atau resolver DNS kustom. Anda mungkin memerlukan resolver DNS kustom dalam skenario berikut:

  • Pengaturan komponen adaptasi terdistribusi

    Jika skrip yang Anda unggah berisi komponen adaptasi terdistribusi, seperti timer atau controller, Anda dapat mengonfigurasi adaptasi terdistribusi untuk beberapa alamat IP load generator. Hal ini membantu Anda menjalankan pengujian performa yang lebih akurat dan efektif. Pilih Takes effect globally jika nilai yang dikonfigurasi dalam skrip merupakan ambang batas seluruh kluster load generator. Pilih Single Generator jika nilai yang dikonfigurasi dalam skrip merupakan ambang batas setiap load generator. Secara default, kedua timer berlaku pada satu generator saja.

    • Konfigurasikan Synchronous timer. Jika skrip JMeter yang Anda unggah berisi timer, Anda harus memilih apakah nilai yang dikonfigurasi dalam skrip takes effect globally atau berlaku pada Single Generator.

      Takes effect globally: Nilai yang dikonfigurasi dalam skrip adalah ambang batas keseluruhan kluster. Nilai tersebut dibagi menjadi ambang batas per generator berdasarkan jumlah alamat IP yang digunakan. Artinya, ambang batas satu load generator adalah nilai dalam skrip dibagi jumlah alamat IP. Jika total dua alamat IP load generator digunakan dan ambang batas agregat yang dikonfigurasi dalam skrip adalah 1.000, maka ambang batas satu load generator adalah 500.

      Single Generator: Nilai yang dikonfigurasi dalam skrip adalah ambang batas satu load generator, dan konten skrip tidak diganti. Dalam hal ini, periksa apakah tingkat konkurensi sesuai dengan nilai yang dikonfigurasi. Jika total dua alamat IP load generator digunakan dan ambang batas yang dikonfigurasi dalam skrip adalah 1.000, maka ambang batas satu load generator adalah 1.000, dan ambang batas seluruh kluster load generator adalah 2.000.

    • Konfigurasikan Constant Throughput Timer. Jika skrip JMeter yang Anda unggah berisi controller, Anda harus memilih apakah nilai yang dikonfigurasi dalam skrip takes effect globally atau berlaku pada Single Generator.

      Takes effect globally: Nilai yang dikonfigurasi dalam skrip adalah ambang batas keseluruhan kluster. Nilai tersebut dibagi menjadi nilai throughput target per generator berdasarkan jumlah alamat IP load generator yang digunakan. Artinya, ambang batas satu load generator adalah nilai dalam skrip dibagi jumlah alamat IP. Jika dua alamat IP load generator digunakan, konkurensi adalah 100, skrip hanya berisi satu grup utas, throughput target-nya adalah 100 per menit, dan mode perhitungan adalah utas saat ini, maka total throughput target skenario per menit adalah 2 × (100 pengguna konkuren/2) × (100/2) = 5.000.

      Single Generator: Nilai yang dikonfigurasi dalam skrip adalah nilai target satu load generator, dan konten skrip tidak diganti. Periksa apakah tingkat konkurensi sesuai dengan nilai yang dikonfigurasi. Jika dua alamat IP load generator digunakan, konkurensi adalah 100, skrip hanya berisi satu grup utas, throughput target-nya adalah 100 per menit, dan mode perhitungan adalah utas saat ini, maka total throughput target skenario per menit adalah 2 × (100 pengguna konkuren/2) × 100 = 10.000.

Langkah 2: Mulai uji stres

  1. Klik Debug untuk membuka halaman debugging skenario dan memverifikasi apakah konfigurasi valid. Debugging skenario memeriksa isu seperti konektivitas jaringan, integritas plug-in, dan kebenaran konfigurasi skrip terlebih dahulu, sehingga mencegah uji stres gagal dimulai. Untuk petunjuknya, lihat Debug a scenario.

  2. Klik Save and Start. Pada halaman Note, pilih Execute Now dan pilih The test is permitted and complies with the applicable laws and regulations., lalu klik Start Test.

Pantau uji stres yang sedang berjalan

Selama proses uji stres, Anda dapat memantau data uji stres skenario JMeter dan melakukan operasi seperti regulasi kecepatan skenario.

Data

Tabel berikut menjelaskan data yang ditampilkan PTS selama uji stres.

Informasi data

Deskripsi

Real-time VUM

Jumlah total resource yang dikonsumsi oleh uji stres ini, dalam satuan VUM (virtual user minutes).

Laju keberhasilan permintaan (%)

Laju keberhasilan permintaan semua skenario dalam periode statistik seluruh load generator.

RT rata-rata (berhasil/gagal)

Success RT Avg (ms): RT rata-rata semua permintaan berhasil. Failure RT Avg (ms): RT rata-rata semua permintaan gagal.

Transactions Per Second (TPS)

Jumlah total permintaan dalam periode statistik seluruh load generator dibagi waktu, dalam satuan detik (s).

Anomalies

Jumlah permintaan abnormal. Penyebab umum termasuk timeout koneksi dan timeout permintaan.

Traffic (Request/Response)/Seconds

Trafik permintaan yang dikirim dan trafik respons yang diterima oleh load generator.

Concurrency (current/maximum)

Nilai konkurensi beban. Jika regulasi kecepatan skenario dikonfigurasi selama proses uji stres, nilai konkurensi saat ini dan nilai konkurensi maksimum yang dikonfigurasi ditampilkan secara terpisah. Pada fase pemanasan, konkurensi yang dikonfigurasi belum tercapai. Setelah fase pemanasan berakhir, konkurensi menjadi nilai yang dikonfigurasi. Untuk menyesuaikan konkurensi skenario selama proses uji stres, klik Speed Regulation dan masukkan jumlah konkurensi yang diinginkan.

Total permintaan

Jumlah total permintaan yang dikirim oleh seluruh skenario selama proses uji stres.

Catatan

Data pemantauan didasarkan pada perhitungan agregasi sederhana dari Backend Listener. Periode sampling statistik load generator adalah 15 detik, dan periode agregasi serta perhitungan data juga 15 detik. Oleh karena itu, latensi data mungkin terjadi.

Configuration Information

Halaman informasi konfigurasi mencantumkan informasi dasar dalam konfigurasi skenario, termasuk sumber beban, durasi yang dikonfigurasi, model trafik, dan jumlah alamat IP yang ditentukan.

Informasi uji stres

  • Pada tab Testing Details, klik View Chart di sisi kanan satu jejak untuk melihat data Real-time-nya, seperti TPS, laju keberhasilan, waktu respons, dan trafik.

  • Klik tab Load Generator Performance untuk melihat informasi seperti kurva deret waktu pemanfaatan CPU, Load5, pemanfaatan memori, dan lalu lintas jaringan seluruh load generator selama proses uji stres. Anda juga dapat memfilter informasi performa load generator tertentu.

  • Jika Anda menambahkan pemantauan ECS, pemantauan SLB, pemantauan RDS, atau pemantauan ARMS, Anda dapat mengklik tab Cloud Resource Monitoring untuk melihat informasi pemantauan terkait.

Detail log sampling

  1. Pilih tab Sampling Logs.

  2. Filter log berdasarkan kondisi seperti sampler uji stres, status respons, dan rentang RT.

  3. Klik Click to view details di kolom Actions log yang sesuai.

  4. Pada kotak dialog Log Details, lihat field log dan nilai field-nya pada tab General. Di pojok kanan atas kotak dialog, ubah format tampilan ke gaya General atau protokol HTTP.

  5. Jika Embedded Resources from HTML Files dikonfigurasi dalam skrip JMeter, tab Sub-request Details akan muncul di detail log. Dengan memilih subrequest tertentu, Anda dapat memfilter log permintaan yang sesuai.

    Detail log juga menyediakan tab berikut:

  • Tab Timing Waterfall menampilkan konsumsi waktu total permintaan dan setiap subrequest.

  • Tab Trace View menampilkan detail rantai panggilan hulu dan hilir dari titik akhir yang sedang diuji stres.

Langkah 3: Lihat laporan uji stres

Setelah uji stres berhenti, PTS secara otomatis mengumpulkan data yang dihasilkan selama proses uji stres untuk membentuk laporan uji stres. Laporan tersebut menyajikan data dinamis keseluruhan skenario uji stres JMeter dan detail setiap permintaan.

  1. Pada halaman Reports, pilih jenis skenario JMeter. Di kolom Actions laporan yang dituju, klik View Report.

Catatan

Pada grafik tren, periode sampling statistik setiap titik data adalah 15 detik. Latensi data mungkin terjadi pada fase awal laporan data akhir.

(Opsional) Langkah 4: Ekspor laporan uji stres

Data laporan uji stres disimpan selama 30 hari. Jika Anda perlu menyimpan laporan lebih lama, ekspor laporan uji stres saat ini ke mesin lokal Anda.

  1. Pada halaman Report Details, klik Export Report.

  2. Pilih Version with Watermark atau Version without Watermark untuk mengunduh laporan uji stres sebagai file PDF ke mesin lokal Anda.